In my opinion, multiple VPS (Clustering) would be an ideal approach to be followed.Rather using single powerful dedicated server to host all services together, clustering has significant benefits such as highest availability, load distribution and low-cost VPS

In your case, the ideal solution would be placing your web server (IIS) and database server (MS SQL Server) on two separate VPS. IIS web server will handle web requests communicating with isolated MS SQL server. Such configuration can be easily established with the help of control panels. For Windows based servers, WebsitePanel (FREE) and Plesk Panel are the most trusted control panels available. This control panel will be installed on one of your VPS and all your web services/servers such as SQL Server, IIS web server, Mail server (if any) will get integrated with this control panel. Thus, you can manage IIS and SQL server through single login of control panel

Additionally, not all servers have the same requirements. IIS Web Server and MS SQL Server will have different server requirements. Web server will be storing the web contents and websites. These websites may contain images, videos file etc. Hence, web server requires more hard disk space than SQL Server

On the other hand, MS SQL server always been resource hungry and it requires more RAM and CPU power. Additionally, while you host MS SQL server you will have huge I/O. Thus, it is highly recommended to host MS SQL Server on SSD drives.