Ive been doing this for 20 years and I have had to do several major migrations due to vendors doing all sorts of stupid things. Millions of dollars and so so many hours completely unproductive because a commercial off the shelf product was 'cheaper' to buy initially.
Feeling it :) Currently in day two of an outage with almost no vendor response for my entire platform because it was "the cheaper option" :)
Every quarter during budgeting I have politely pointed out this inferior service costs us a lot of money and sucks at support as well, and every time its considered not a priority.
Today its a priority :)