We have used those water proof containers (the ones that I think are made to hold a pack of cigarettes.) They are big enough to hold everything you need to keep dry (credit cards/cash ID etc). Carnival has them in their store on the ship, but be careful in picking one out. Make sure the rubber gasket is not kinked and that it shuts tight. Otherwise it leaks. Never thought of trying a dive shop... I will have to go check into that.
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, Magic 1/14, Freedom x 2 6/14
NCL Dream October 2006, RCCL Mariner OTS June 2007, Celebrity Silhouette 2013