While in Cabo a few years ago. we were whale watching with a ship's vendor and saw people snorkling in a dangerous area with an independent vendor. There's also lots of rumors about being stranded.
We were also on a ship-booked excursion in another Mexican port and we did not return to the ship until an hour after sail time. The captain elected to wait for us since the six of us were the ship's responsibility. (We did have the honor of an ovation from the balconies when we arrived!)
On the other hand, we have had some wonderful land tours, catering to our personal whims, with independant operators. My advice would be to book with the ship if the excursion has any potential physical hazards. Also, know what your "Plan B" is if the operator cannot, for some reason, return you to your ship. If the operator says he can return you to the ship by 3:00 when sail-time is 4:00, that would be too close for comfort.
First time visitors to foreign ports should probably book through the cruise lines until you get to know your ports. It costs a little more but those vendors have been thoroughly vetted since the cruise lines cannot afford the publicity of injured (or worse) passengers.