Our rule over the years has been arrive the day before, unless it is in some relatively distant part of the earth and then make it two days. As well, never take the morning flight out the day the cruise ends - in fact, we may stay a couple of days and let the cruise traffic dissipate and see a bit of the port we end up in. We apply these to most of our waterborne trips, whether the small ship dive liveaboards or the cruise lines.