cl works OK for me on Windows XP - but that is probably because I have Microsoft Visual C/C++ installed. If you do then make sure you run vsvars32.bat in the environment, if not, then use a perl that does not require it.
I'm a little confused. Cygwin has perl already bundled, does it not? Should you not be trying to install under Cygwin - that should be using gcc rather than the Microsoft compiler. Try this:
perl -MConfig -e 'print "$Config{cc}\n"'
On my version of Cygwin it gives gcc.
By the way, please use <code> ... </code> tags, and <br> when posting.