It’s irrelevant what i think. It’s not an emotional decision. It’s not about “having your cake and eating it”.
Most companies won’t be affected much by an employee “only” giving 1 months notice vs 3 months, therefore its unreasonable. If they can’t prove a financial loss, then there the company could not claim for any loss from the employee.
Exactly the same reasoning would be used if it was the other way around, but its much more likely an employee would suffer a financial loss, because they have lost their pay for 2 months if they were given 1 months notice instead of 3 for instance.
In small companies and so on, this might not apply, but for large ones and non-senior management employees it does.