When our son was 10 (he's 12 now) we booked with a private company to go to sting ray city & 2 snorkeling stops. He never snorkeled before and he is now a die hard convert. I would not go with the ship's excursion because the group is way too big and we got a better price too on our own. When he was 5 we took in the turtle tour & it was o.k. The turtle tour is quite short so on the way back we had our driver stop at 7 mile beach and we spent the rest of the day there playing in the water. It was easy to catch a shuttle back to the tender spot.
Have Fun,
Jenne