This seems like the logical way to handle the situation.
If the highly loaded flight was cancelled for maintenance, then more people would be inconvenienced. And none of them would be eligible for compensation. That leaves a whole lot more people in a pickle before the holidays.
It makes sense to cancel the lightly-loaded flight.
And it doesn't make sense to force the airline to compensate those passengers, because if not, it would create an incentive to cancel the higher load flight and not compensate anyone.