Actually if the ship knows your flight information - such as if you bought your air from the cruise line - they will wait if possible. It depends on the circumstances and the port authority. I just wouldn't rely on it and thus always tell people to get to the port a day early if at all possible. However we have had more than one report over the years where a cruise waited because of flights being delayed.
As for emergency contact information - it will be in your cruise documents and really all anyone would need to do is contact your agent or Carnival directly with your name and the ship's name, and your cabin number. If it is an emergency they'll get in contact with the ship.
But, here is what they post on the website:
Those ashore can contact you via the Sea Mobile Shore-to-Ship telephone service. The rate is $9.50 per minute from the United States.
Have them dial 1-877-225-7447 and have the ship name and your name ready. It'd be nice if they had your cabin number too. They'll also need one of the following cards: MasterCard, Visa, American Express, Discover, or Diner's Club.