The issue the OP experienced was not with the Windows PRNG, but with the PRNG built into Perl. They are quite different animals. The Perl PRNG is a 16 bit primitive PRNG that has been provided by MicroSoft's C run time for pretty much ever. It has long been recognised as a very flawed (some would say 'useless') PRNG, but much code has been written using it that would probably break if it were changed. If you have a serious need for a good PRNG for some application there are plenty of libraries around that will supply the need for various appropriate definitions of 'good'.
To a fairly large extent there is not a great deal of point in a compiler supplying a 'good' PRNG because there are many areas of compromise in the definition of good for any particular application. Anyone with a serious application for a PRNG will most likely either develop their own, or use library code developed for a similar application.
True laziness is hard work