We've snorkeled at both and have not been charged and we always bring our own gear. It may have been Labadee you were thinking of. Don't know about lately, but they use to require everyone to wear a snorkeling vest when snorkeling because of the coral reef. And of course, no one had one, so you had to rent one to go snorkeling. Not sure if they still require this or not, but Coco Cay and Half Moon Cay do not have any coral, so it's not a problem. Having been a scuba diver for over 17 years, I definitely appreciate where good snorkeling is and personally, I was not impressed with either place, since there's too much sand. Snorkeling is not all that great at sandy beaches since fish like the coral as it provides shelter and food.
Pete