You might want to look into excursions that do a little bit of both. When we did the 3-night, the snorkeling in Nassau was a lot better that at CC. We did the Catamaran Sail and snorkel.
We'll be doing the Eastern in June. Now, I've only read about all of this on the boards, but I'll share what I've learned and maybe it will help you.
We plan on doing a snorkeling excursion at St. Thomas. I'm a little nervous about doing things here on our own due to the short amount of time here. Half of the fun, is the trip there and back. One of the choices is the Doubloon Sail on a schooner. The ship (boat with sails?) looks like alot of fun. I know my ds-13 will think its cool.
On most of the excursions, you only spend about 1 hour-1 1/2 snorkeling.
We plan on going on our own at St. Martin. We are going to go to Dawn Beach by taxi. They say that it is good for both snorkeling and waves. I'm not sure how this works for both. We figure ds will love to use a boogie board (cheap one that will be bought at Cocoa Beach that can be disposed of!) here.
We are also going to go to the Great Bay beach near the ship. I believe the waters are calm here and you can rent wave runners.
There is also suppose to be a water trampoline. I have also heard that there are some awesome drinks served as well!
The only reason I mention snorkeling elsewhere is because depending on when you hit CC during the day, snorkeling can get very "cloudy". We go first thing in the morning. I was literally the first one to snorkel last time, it was great! When we went later, the visibility was cloudy due to the amount of sand that can get kicked up.