Have you looked into IIS Hostable Web Core?
This feature basically allows you to host the entire IIS functionality
within your own process. This gives you the power to implement
scenarios where you can customize entirely the functionality that you
want "your Web Server" to expose, as well as control the lifetime of
it without impacting any other application running on the site.