We booked a snorkel tour through Olympus tours called "Morning Glory" booked at Adventure Snorkel.
It was $55 that included a "snack" with drinks included. It lasted from 8-12. They take you to a deep reef, and then a shallow reef. It was about 1.5 hours worth of snorkeling.
If I had to do it again, I would go somewhere on our own, and go snorkeling, maybe over to Cozumel at Chankanaab (sp?) park or something like that... I didn't think it was worth $55...