This is why I always suggest flying into port a day early because stuff happens. But if want to fly in the day of departure, you'll always want to make sure you purchase travel insurance. I don't necessarily suggest that which is offered by the cruise line because independent policies are better and usually less expensive (except for those over 80). Plus, they'll always provide you a reimbursement in cash and not credit towards another cruise.
As far as Princess not helping you, that's really not a surprise. People booking directly with the cruise line often have the misconception that the cruise line will look after their passengers in these situations. While some are better than others, it's basically best to look after yourself and work with an agent who has contact information not readily available to the average passenger. Often their assistance when problems occur can be invaluable.
As for the Princess insurance, it's not always a 100% reimbursement when you cancel. This is directly from their website;
The Princess Vacation Protection package of benefits, like many travel protection programs, will refund 100% of your otherwise nonrefundable cancellation fees in the event of an emergency. Yet unlike similar programs, Princess Vacation Protection allows you to cancel your vacation no matter what the reason.
Even if the reason for your cancellation does not qualify you for a full refund under the Special Cruise Enhancement Feature of the Princess Cancellation Fee Waiver Program, you will receive 75% of the non-refundable fees in the form of a credit toward your next Princess vacation. Thatís a service unique to Princess Vacation Protection.
And for those wanting even more peace of mind, Princess Platinum Vacation Protection doubles the limits of benefits for Emergency Evacuation/Repatriation, Accident & Sickness Medical Expense and Baggage/Personal Effects coverage under the Princess Travel Insurance Program and also increases the Special Cancellation Enhancement Feature of the Princess Cancellation Fee Waiver Programís cancellation credit to 100% of the non-refundable fees.
With Princess Vacation Protection/Platinum Vacation Protection, if passengers are delayed pre-cruise for a covered reason, they are eligible for up to $500 per person to cover costs associated with catching up to the cruise. If they're delayed post-cruise for a covered reason, they are eligible for up to $1,500 per person to cover associated costs.
Alternatively, if passengers opt to cancel their cruise after being delayed, under the Princess Cancellation Fee Waiver Programís Special Cancellation Enhancement they are eligible to receive cruise credits of 75% for Standard Vacation Protection and 100% for Platinum Vacation Protection.