You should get the same results on different windows, at least that used to be the case and I'm fairly certain I've seen it recently. I have heard that changing the number of processors used can change the result, but not positive. (It was kind of a weird thing, whereby if it was set to maximum allowed, you're supposed to get the same result even if the machines have different# of procs, but if you manually set it to different numbers, you get different results.) I never looked into it enough to be sure.
Most of the time, I don't think it's that important. The difference is just a seed variation. If there is a build that is being released to production, I personally recommend zipping it up, along with the /db and /incremental_db. It may be large, but it completely removes any issue of "is this reproducible". Even if it is reproducible, it's a lot faster to unzip it and open it rather than running a whole compile.