You do not have to have 3 different credit cards. Each of you will get a separate card for onboard charges. You have to give a credit/debit card for each one. You can use the same card. When the cruise is over, the cruiseline will charge all unpaid charges to the credit card number you give them.
If you use a debit card, a separate "hold" will be put on your checking account for each person. For example, if the hold is $150, a total of $450 hold will be put on your checking account. Even if you plan to pay off your charges with cash before the end of the cruise, there will still be a hold on your checking account until the final bill is paid. That could conceivably be a problem for some people. (I don't know what the exact amount is, I am only using this amount for example purposes ONLY). I have seen on another board where someone gave a debit card and then paid the onboard account in full with cash before they disembarked. They got home only to find out that checks had bounced because of the hold the cruiseline put on their account. They didn't know about the hold. I am sure it is in the "fine print"somewhere so the cruiseline is covered.
This is a good example of why one should visit boards like this -- to find out all the information that one should know about BEFORE leaving for a cruise.