Hi,
We've done both. The Stingray city visit as an excursion while on the Celebrity Mercury and the Stingray City and Tour, direct with Captain Marvin's.
I would recommend the tour booked directly through Captain Marvin's, You are taken to three places including some coral gardens where you can see brightly colored coarl and fish (we even saw an eel close up that the guides lured out of some coral formations and a shark too). The visit at Stingray city as part of the tour was long enough to swim, a while and to feed and hold the stingrays... that is about everything you can do there. So, why stay for an extended time if it is not needed?
My recommendation... book direct with Captain Marvins. Save Money, do the tour and not just the visit to Stingray City.
Let me know if you have questions about our experience with Captain Marvin's. They were great!
Howard