We did the half-day last week from 10:00 - 1:00 with an 8, 6, and 2 1/2 year old. It was great! They all loved the boat (we had a beautiful sunny calm day).
The two snorkeling dives were actually better than Stingray City! The clarity was unbelievable - at least 100 feet. Tons of fish and great variety - the captain even got in the water at one spot and lured a 6 foot Green Moray Eel out of hiding with a piece of squid. It was as tame as a house cat or dog! Excellent experience.
We had to drag our 8 year old OUT of the water she was having so much fun. The 6 year old jumped in at the first snorkel site, looked around with me for a minute, then wanted to get back in the boat. Our youngest (2 1/2) stayed on the boat for the snorkel, but both my wife & I were able to get in together as one of the crew watched him (he also had a life vest on should anything happen) and our 6 year old. WE gave them a great tip at the end for freeing us up!
At Stingray City they all got in (the water is waste deep). The 6 year old and 2 year old were clingy, but nonetheless truly enjoyed touching the rays and looking at them through their masks.
We also got free rum cakes from Capt marvin at the end, and they dropped us off at the Holiday Inn beach, which we enjoyed for a couple great hours before taking a taxi back to the ship.