I agree with penny that Cozumel is best for snorkling and for the ruins.. wait for Belize. The "good" ruins in Cozumel require you to go the the mainland which causes the excursion to fill your whole day. Belize has good snorkeling but you never get into port (they pick you up from the ship). So I would recommend doing the snorkeling in Cozumel so you have time to see the city after.
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, Celebrity Silhouette 2013