There isn't really a good way of dealing with this. One thing you need to figure out is what to do if you have multiple currency in the cart, since ubercart, payment methods etc can't handle this.
If you want an alternative currency for some products, one way of doing that would be to add some options CCK fields which holds the price and currency. Then you could hook_currency_handler_alter
and hook_currency_handler_format
to handle how the price should be displayed.
This is no easy task and you need to alter a lot of things to make sure the proper context is available to be able to load the node and figure out how the price should be displayed.
In other words, it's a real pain in ubercart and there isn't a good way of doing this really. The above is probably the best solution though.