Here's another angle: in addition to freezing out the line's IT and communications, what about the passengers'? All those relatively well-off people giving account numbers for tickets, optional activities, shopping and such. Would you give your card number if you knew the database was compromised? I think I'd skip that cruise.
Paying by a credit card is always the safest method.
Because if you do not receive the merchandise purchased, the credit card company will issue a refund as required by law. Your liability for loss is limited by law.