You are correct. You can deduct your legal gambling losses but if you do you must declare ALL of your legal gambling winnings and have the records to prove it.
It is pretty hard to prove unless you have receipts from casinos, OTBs, racetracks, and other types of gaming operations.
If you gamble in the U.S. in a legitimate casino and hit a large jackpot, usually over $1,200 you will have taxes removed on the spot and receive an IRS form W2G or a 1099. I have never received either from a cruise but then again none of my winnings have been one time jackpots. I have won jackpots in Las Vegas and have been issued a W2G.
If you are a big time gambler you can do an IRS Schedule C and set it up as your occupation.