There are many modern corporations who don't seem to understand that in cases like this the amount of money on a single transaction is trivial, but the irritation factor is ***really*** high. Yes, if you multiply it by a million times it adds up, but then you have half a million customers irritated at you. It doesn't seem to faze airlines, possibly because having irritated customers doesn't affect business because all the other airlines irritate their customers just as much. Banks are notorious for this attitude. The problem is that we customers keep coming back because the (apparent) price is low.
And by the way, when it comes to the so called loyalty programs, the TANSTAAFL principle applies. You're paying for it one way or another.