Jenda Krynicky has done it in Win32::FileOp which you can download from CPAN. This module is written using Win32::API, so you can look through the code if you want to know how its done.
I don't like the idea of mixing user interfaces, but if you do, I'm glad to help :)