Welcome to Cruise-chat, Professor! Re: bringing cash - if you bring a credit card, your onboard account will be established with it. If you want to set up an onboard account with cash instead, they may ask you for a sizable amount ($500 or more), so the credit card is the way to go. Bring some cash for tips (for room service, porters at the airport & the dock, cabs and purchases in the ports of call, etc.) but otherwise you probably won't need it onboard. Several of us have recently recommended bringing about $200-300 (for one person) in cash on a cruise. Travelers checks work too, and can be cashed at the purser's desk.
If you don't want to bring your BC, you should get a passport. If you're a US citizen, you can get a passport usually in about a month's time after sending in the application (you'll need that BC for the application, of course). I have no idea how long this process takes for Canadians. The passport then can be used in place of both BC and license. Personally, I prefer to use a passport - simpler to have one document instead of two, and I can relate to your worrying about losing the BC. Make a couple photocopies of the front page of your passport, leave one at home in a safe place and take one with you, kept separate from your passport; in case of loss, it should make it easier to replace. (Incidentally, I don't take the passport with me on shore excursions unless it's required by the country in question - during port calls on a cruise, I take my license and my cruise ID instead. Most ships have a small safe in the cabins, and I leave valuables I am not carrying in there.)
Have a great cruise!