In your example, the customer may have had software that depended on the routers having some functionality that the cloud native routers didn't. Sure if they had designed for that cloud from the beginning it wouldn't be a big deal. But now, that $2M might be less than the cost of changing all their other systems to work around the limitations of the cloud native router. I've seen situations play out like that a few times.
In this particular case they were sold a product that serves one purpose: multi-cloud solutions across international boundaries where no single telco can connect all of the data centre locations.
Their handful of locations are all in one city and well-connected by multiple telcos because... they're a state government, not a multi-national corporation. They're blocked by the constitution from expanding inter-state, let alone internationally. That would be a literal act of war.
That didn't stop the vendor's sales team showing slides with titles like: "What if you need to expand into the Chinese market?".
If you do things the "native" way in Azure or AWS, you'll be fine, just like millions of other customers.
If you try and make the cloud work like your old data centre platform, then you'll have a bad time.
I just watched a customer spend $2M to deploy software routers to replace the "bad" cloud-native routers. Now everything is more difficult, slower, and just all-round bad. But they "had" to do it. (Narrator: No, they didn't.)