What cruise line you going on? We did Carnivals Stingray & snorkel excursion which lets you do both and we had a go amount of time at both stops. However, I would take the other's advice and connect Captain Marvin's for a tour. It will cost less than the ship booked tour and you will probably get more tour than on the ship too.
Carnival Cruise Lines:
Fantasy 90, Celebration 95, Victory 05, Conquest 05, Spirit 6/06, Freedom 6/08, Holiday 7/08, Victory 6/09, Valor 9/09, Dream 6/10, Splendor 8/10,Conquest 8/11,Magic 11/11,Triumph 4/12,Spirit 7/12,Freedom 11/12, Triumph 2/13 - The fire cruise
NCL Dream October 2006, RCCL Mariner OTS June 2007