On Princess you are allowed $500/day on your shipboard account, as long as you have a credit card that will cover it. They do charge you a percentage for the transaction. I can't remember exactly how much, but it wasn't too bad.
On RCCL you can draw cash from your Sea Pass card account in the Casino. I do not know if they have a daily limit tho. It all goes on your credit card at the end of the cruise, and you can keep daily track of your on-board expenses on the in-cabin television channel.
I can only speak to CCL casino, but since Dave said that they add a "service charge" it does sound similar. On Carnival, you can use your SeaPass (called Sign and Sail) in the casino to get cash, they charge a 3% fee for doing so. At the end of the cruise, any unpaid balance on the account is then charged onto the credit card used to back the SeaPass card. Note that this charge looks like a purchase and not a cash advance. So you are not going to be paying cash advance interest on cash from the casino.
Is it worth 3% to not have to carry cash with you? You can answer that. I get travelers checks. The casino cashier is more than happy to exchange those for cash without a fee. You can go that route if you don't want to carry cash. As least if those get lost/stolen you can get it back...
The casino cashier is more than happy to exchange those for cash without a fee
Now you've gone and done it! Someone from the cruise line is going to see that and realize they're missing a chance to make even more $$$. So, don't be surprised to see a fee to change your travelers checks the next time you go waltzing into the casino - you'll only have yourself to blame.
I have used the sea pass many times and they do not charge you but do keep your receipts and check them before disembarking. They have in the pass charge me double on cash advance in the casino. they did take care of it at once. There is a bank machine on board also they do get a percentage of withdrawls from it. But if you can get free travelers checks they do not charge to cash them and that would save you money.