It seems to be an odd business model not to fill the ships at some price. They have to sail regardless, and that is where the revenue comes from. It also affects the crew's pay.

Carnival can probably undercut them because they are not paying for ice skating rinks, rock climbing walls, and flow riders. Not to mention the cost of fueling behemoth ships, and their construction costs. The smartest thing they did was say "no" to the bigger ship challenge from RCI. Instead they limited their new build orders and put the "Pinnacle project" on hold. Instead they invested money in the Evolutions revamp of the Fantasy class ships. So they don't have to charge extra for room service, steaks, and they still have lobster.