All you would need is some URL rewriting; no need for Virtual Directories.
The Config.Current.Pipeline.Rewrite
even will let you parse and edit the path and querystring in code, which is the most flexible solution.
IIS URL Rewrite, however, is also capable of solving your problem.