Same as airlines.
Cruises are different things to different people. And those different things will turn out differently.
For example:
1) They are a way to visit several places and unpack/pack only once. Ditto check in/check out only once. This is a lot of vacation hourly overhead not lost.
2) They are a way for drunks to pay for a drink package up front and not keep track of it as they pour it down their throats drink by drink.
3) Some cruises go places you can’t get to any other way. For example tourism to Antarctica. Glacier Bay Alaska (you can get there on foot, but 99% of visitors are by cruise ship).
4) They are a way to lose even more money with a gambling addiction as cruise ship casino slots are set for far more money to the “house” than Vegas.
5) Infinite food, good or bad.
They offer things like entertainment and pool parties, but people don’t book for those. They book above.