So I though, fifteen years later, with all the "cloud" buzz, it would be possible to have virtualization layer which could hide details and let Windows think that there is one big multicore computer.
Microsoft does have something that uses multiple machines and sort of hides the details: Microsoft Clustering Services (MSCS.) What you want is to make a "generic OS" become cluster-capable. One can imagine it would be possible but it wouldn't really be virtualization since virtualization doesn't hide the physical CPU. For example, when you lose a machine, how will generic Windows deal with going from 100 CPUs to 99? Thus you'll have do do something like emulate "just one CPU" to hide the change in CPUs. And emulation is not virtualization.
I'm not saying it's impossible. just that it's a technology that not really virtualization as it's done now. "Clouds" hide the details, but clouds don't have to be virtual either.