Last march we cruised to Cozumel and chose the Xel-ha excursion because I knew that much of the shoreline of Cozumel was damaged. Xel-ha was fantastic. There's a big lagoon for snorkeling with lots of fish, a dolphin encounter that you can buy tickets for, or just watch the dolphins for free. There's trails and all kinds of other activities there as well.
10 years ago I snorkeled at Chanakaab Park and it was great. Hurricane Wilma did a tremendous amount of damage to the park and the beach area. They're working very hard to restore it, but I doubt that it is back to what it was (somebody correct me if I'm wrong).
Visit xel-ha's web site and see all they have to offer: http://www.xel-ha.com/