With any process that relies on external data, your source has to be stable and seldom (if ever) changing. All of these will rely on that, and that's what the problem is.
I would say that (without delving into the depths of the modules presented) anything that can connect to
reliable and accurate sources (multiple) would be your best bet.
Without having immediate control of a feed, you will run into these problems anywhere, even in major corporations that talk only amongst themselves
If Finance::Currency::Convert is too bulky, take a source as your primary data feed (e.g. Yahoo!) and use it unless it changes/dies/becomes innacurate, leaving the remaining sources to be used in that case.
Which is probably what it does anyways :)
Good luck!
--------------
It's sad that a family can be torn apart by such a such a simple thing as a pack of wild dogs