I feel no compassion for the OP's friend. He should have known better. We are all responsible for learning the other country's immigration laws before visiting. He's lucky he was not arrested and held in a jail cell for breaking the law in Canada--it is illegal to enter with a criminal record without getting a visa or certificate of rehabilitation first. Everyone knows this. It's also illegal to enter if you have charges pending (you have a trial upcoming) or have an active warrant for your arrest. BTW, DUI is considered a felony in Canada.
Canadian Immigration has direct access to the FBI's NCIC database, which shows your criminal record (all arrests and convictions, but only if you were fingerprinted for them), and any national arrest warrants (all felonies and violent misdemeanors which warrant extradition between the states). All they have to do is scan your passport. Not all people are checked though.
And it's not just a Canadian thing. The US has the same rules for those entering from Canada and is even more strict as they don't recognize pardons granted by Canada. So those with no Canadian criminal record can be denied entry into the US if they were pardoned by Canada, as the US still retains the older records.
You are technically not even allowed to cruise to or through Canada from the US with a criminal record.
The only recourse is to ask the resort/agency/hotel for a refund or other credit/exchange directly. Any traveler's insurance claim will most likely be denied since the traveler is responsible for knowing the laws and not breaking them. You can try to file a chargeback with the credit card, but it will likely be denied. It is not up to the airline or resort to check whether you can enter Canada; in fact, they cannot check. Only Canadian Customs and the FBI have access to the NCIC database. This is an internal Canadian issue, not a terrorism issue for the airlines or TSA. The person could have checked with the FBI beforehand to see what is on his record:
http://www.fbi.gov/about-us/cjis/bac...kground_checks
BTW, even President George W. Bush was denied entry into Canada due to an old DUI in Kennebunk, ME. He had to get a special visa to allow him to enter. No one is immune.
Anytime anyone books a vacation or trip to Canada, whether it be for business or pleasure, whether it be by land, sea, or air, you are taking a chance of losing your money and possibly being detained in jail if Canada finds you inadmissible due to your criminal record or current charges, even if the conviction was from 30 years ago. If coming by car or foot and they find out, they will turn you around at the border. If coming by air, they will hold you until a flight back can be arranged. If coming by sea, they will not allow you off ship at Canadian ports. If taking a cruise, and stopping in Alaska and taking the train excursion day trip into Canada, if any one person is found inadmissible, the entire train will be turned around. Search the internet for stuff like "denied entry into Canada" or "visiting Canada criminal record" or "cruising to Canada with criminal record" or "US enter Canada criminal record", and you will find many many stories of people being denied entry or terrified since they have already booked a non-refundable trip in advance and their boyfriend has a record.