We took the disposable cameras. I would buy them on the ship because they are the same price as Wal-Mart. Our pics weren't the greatest but it was because it was raining and overcast. They also have underwaters that you can reload with 35mm film for $10. Only problem is, if you are out in the water, the film isn't waterproof and you have to change film. The underwater disposables with flash were $15.95 on ship. I couldn't find them anywhere at home so didn't take any.
Hint: the fish swim really fast! Hard to catch them on film. lol