IIRC use utf8 worked for me.
However, it only works if the filename is hardcoded into the script. If it's typed in by the user, it gets trickier (so much so that I have no solution for that scenario).
This works for me on WinXP with ActivePerl on a file named i.txt, but it fails if the file is called í.txt.
I'm sure it has to do with the encoding used by the console, but I'm not sure how to make it just work (TM) on any windows computer.
Here's a thread in which I asked about the problem - with no final answer, at least no simple and full solution: http://www.perlmonks.org/?node_id=859764