I have been on this cruise and I agree with spoheat. Progreso is on the gulf side of the Yuchatan pennisula.. so while it would be possible to snorkel, its not very good there. Cozumel is great for snorkeling but the hurricane did mess it up. Belize has great snorkel tours that take you from the ship to the barrier reef. I would recommend this as there really isn't much to miss in Belize City itself. You are better off doing the shopping in Cozumel and there are more choices for things to do there. So do the snorkling in Belize and choose other things for the other two stops.
Carnival Cruise Lines:
Fantasy 90, Celebration 95, Victory 05, Conquest 05, Spirit 6/06, Freedom 6/08, Holiday 7/08, Victory 6/09, Valor 9/09, Dream 6/10, Splendor 8/10,Conquest 8/11,Magic 11/11,Triumph 4/12,Spirit 7/12,Freedom 11/12, Triumph 2/13 - The fire cruise
NCL Dream October 2006, RCCL Mariner OTS June 2007