By default Web Setup Projects created in VS.Net do not have an option of selecting a web site, only a virtual directory and a port. So a web application can only be installed in the default web site, or a web site that uses a different port. It cannot install to non-default web sites that use host headers. According to Microsoft, and depending on which news groups you read, this was either done by design, or it was an 'oversight' on their part.
However, they did eventually release a fix for this in the form of a replacement DLL and a script that modifies the .msi file. Not the best solution, but a solution nontheless. Here's the link to the knowledge base article:
http://support.microsoft.com/default.aspx?scid=kb;en-us;821335