I still use VC7.1 personally (although I have 6.0 and 8.0 as well, but hence why I like CMake, google it, it is a multi-platform make system that can create project files for just about any IDE/compiler out, everything from GCC to DevC++ to Visual Studio 6 to 9 and others). I will take a look at it later today if I get a free moment.
EDIT1: Hmm, yea, way too big for a reduced test-case, anything smaller (and not in VS9, although that would not matter if you can get it down to one file)?
EDIT2: Things look fine from an initial look, looks pretty identical to what I do...
EDIT3: I think I may have found it, you are not compiling your project as C++ files, you are compiling them as C++/CLR, fix that and I'd bet it would work (well, mostly because I do not see anything else wrong and I know /CLR breaks some things). Remember, *never* touch anything that says /CLR or Managed when dealing with C++, Microsoft loves to microshaft you when you do that (they are trying to break the C++ standard with those). Not to mention that running in /CLR or Managed modes slows down your app.