1 the hardware, this support program could work only for certified hardware and using certified drivers, no latest nvidia driver beta(I got kernel crashes because of video drivers both on Linux and Windows and the blame would be on the driver vendor)
2 Some users are stupid, if you ever did customer support you will know (in one case a person complained our application was missing a button, in the end I use TeamView to see the weird issue and guess what, the user dragged the window down so the button was offscreen, this is maybe a Window Manager but , it was on Windows or Mac I do not remember) my point is your customer support team will waste a lot of time so the support program can be expensive.
Then the situation is complicated since you don't control the upstream and if I fix a bug in upstream software X I may have to spend more hours convincing the maintainer that the fix should be included, sometimes the meinteiner has different ideas on how it should be done,
Now imagine the bug "There is no system ray anymore, I can't see my Slack,Skype,Dropbox icons there and I want them back. You can't fix this without forking GNOME and you get a new holly war with the GNOME camp (Canonical does not care about desktop anymore anyway this was just an example)
The main problem isn't either of the above. It's that there's no way the annual single-seat price can pay for the time of a competent person investigating even a single incident.
The economics have a chance of working out if an org with a large number of seats pays for support before they have a concrete problem and when they do, the the number of incidents they file don't scale with the number of seats.
Who knew, right?