Sure if all you need is to host some static site it's all fine but if you need to host something more beefy that has requirements the costs are huge compared to rental servers.
Also, there is the point of nearly all managed hosting serverless solutions is done by american companies so if you want to host in the EU for example to avoid surveillance there isn't a lot of options out there.
There is also a bunch of different requirements that makes hosting on a serverless platform hard / more expensive for example:
* Connecting to a third party that has some firewall based on ip
* Using anything else than http
* Having multiple sites where with a rental server you could host everything on the same machine it usually gets quite expensive since serverless stuff costs usually are per app basis.
* As I've mentioned earlier, if you transfer and store larger amounts of data
* Any requirement from governments and such that data is not stored on american companies
* Long running processes
The list can be long for when serverless is not viable and for most of the apps I've worked on a lot of them couldn't be hosted on a serverless platform for some of these reasons alone.
Regarding the price aspect, I've found that if you have some kind of backend with a larger amount of traffic serverless solutions is always more expensive and I get why, it's managed and it's understandable. A rental server pricing is easy and predictable, a serverless solution pricing is complex and hard to understand probably by design. It appears cheap at first glance but in reality it's almost always a lot more expensive.