Someone I think V_F posted a link on this. A lot of the reason is because of the relatively easy to implement latency compensation that a lot of developers are using these days which tends to push everyone towards a middle ground compromise outcome in theory in the pursuit of being "fair" but in reality is just a worse experience for most people on already OK latency while insignificantly improving the experience for people who are dealing with poor latency anyway.
Also for some reason when you have a lot of game server instances on the same server even when the hardware on paper is upto it and the server framerate average and latency is within OK numbers it still feels somehow a little sluggish - I suspect that it is like frametimes with rendering FPS and there is a bit of variation that isn't tracked in the averages but is just enough to be noticeable when playing.
TBH virtual servers are never as good as a physical one. But companies like them because it's cheaper. I wouldn't use them for gaming servers if it was up to me.
The problem is the people making the decisions aren't people who use the services. So they make dumb decisions.