So my question is regarding
The end of time (Unix), will this occur on a 64bit Windows 7 OS, that is virtualizing a 32bit version of Windows XP?
Partially yes. I've seen some ActivePerl applications fail to run if local date is after year 2038. It's because they use 32-bit UNIX-style time_t, and that does not depend on host OS (64-bit or 32-bit Windows).
Latest Microsoft libc is using 64-bit time_t, but older applications compiled with Visual Studio 6.0 depend on 32-bit time_t, so they will have date overflow problems in 2038. This does not affect applications using pure Windows API (GetFileTime, GetSystemTimeAsFileTime etc.), even if they are compiled with Visual Studio 6.0.