You're exactly right and it doesn't seem fair. The same rate should be paid by everyone staying in like cabins. But that's not the way the cruiselines think. It's not only Norwegian either.
It's my opinion that the cruiselines have overbuilt, with new and bigger ships still in the yards under construction, that they have glutted the market and need to increase revenues any way they can to stay afloat (pardon the pun). Discounting fares to sell the remaining cabins will get more sold but only irritate the other customers who've paid more. And worse yet, they've held onto the early birds' money for much longer.