On Carnival Liberty in 2010 they showed Star Trek and Land Of The Lost. Both were about a year old. You'll never see a first-run movie on a cruise ship. What they can show depends on the licensing agreements the movie distributors have with various outlets such as the theater chains, Netflix, DirecTV, DISH, and other Pay-per-view providers. There is a pecking order of which entity gets to show the movies next after they have run in the theaters. This ensures 'exclusivity' for a set period of time for each provider.
Carnival could have an umbrella license but that only allows them to show movies when they can get approval and not have to pay a fee per movie. An umbrella license would cover all movies provided by their distributor on a yearly fee basis. Not cheap.
What many don't realize is that no matter how old a movie is, it likely still has a licensing fee if you show it publicly or for profit. I think the copyright has a 120 year length.