Actually, the Citi Premier Thank You Card is offering a 50k points bonus ($125 Annual Fee though, $2k spend/3mos.) that you could convert into 5-$100 Carnival or Royal caribbean gift cards.
Also, the Chase Sapphire Preffered 50k points bonus ($0 Annual Fee 1st Yr, $3k spend/3 mos.) can convert into 2-$200 Carnival or Royal Caribbean gift cards with 10k points leftover. Or, you can just use the Sapphire points to pay yourself $500 cashback and use that for the credit card payment that you'd have charged your cruise to (so that you receive points for the cruise purchase as well).