It would be awesome, but the very business model of these companies relies on things not being awesome. I can imagine that a significant chunk of their revenue comes from disgruntled customers that have no choice but to pay even if they've been wronged because they don't want the hit on their credit report (even though it can be removed with enough effort).
I actually think that overall the companies probably do lose more money (in both PR/customer goodwill as well as support & debt collection costs) due to these scummy practices but too many people within the company rely on things being the way they are to get paid, so they have no incentive by themselves to improve things.
For example, allowing easy subscriptions/cancellations online would remove the need for a sales and "retentions" team as well as the multiple layers of management above them. Making contracts cancel automatically removes the need for debt collection and all the management around that and so on.