You're arguing with someone who's given you millions of dollars over decades about a single 2-dollar missing component on a massive order they made? You're insane. They're just going to go elsewhere. It's not even worth the time on the phone call to argue it.
You're assuming companies don't understand that. What you're missing is that the companies that do this tend to be the companies that have their customers over a barrel. You have a choice in where to buy random stuff online. You don't have much choice in airlines. Only a few companies go to both of the airports that you need to fly between. They can screw you as much as they want, and unless you're prepared to lawyer up, you're gonna accept whatever they give you and like it, or you're not gonna fly, because they're all approximately equally horrible.
Ultimately, the reason for bad customer service is that the customer has no power. Short of a class action, you're not going to change their behavior, and they usually write their contracts to make class actions hard. And governments are thoroughly in the pockets of these big corporations, so they're not going to do anything about the problems, either. And there's no competition, because a few big companies have cornered the market, in part because of high cost of entering the market, which in turn, is often because of high regulatory burden. But those regulations are essential for preventing other problems, e.g. safety issues, so removing the regulations won't help, either.
The right fix is to separate the customer-facing organization from the safety-critical organization. Have a few companies that own fleets of airplanes, and a hundred companies that rent planes from those companies and fly them and sell tickets. With that organizational model, all of these problems go away, because the customer-facing orgs have a low barrier to entry, so you'll tend to end up with companies competing to provide the best service at the best price, with some focusing on higher-tier service, and come focusing on lower prices, but everybody knowing that if they screw up, you'll go with one of a hundred other companies. And you'll get a higher diversity of routes, and you'll have aggregators combining routes from multiple airlines, etc.
Unfortunately, we won't see this, because regulators aren't interested in breaking up oligopolies these days.