Hello. Thanks for your notes.
1) Currently, VM saves all prices in order in default store currency. It is not possible to have more prices in one order. However, VM supports payment in different currency than store's. In that case, we added option to last version to Page Appearance -> Display in payment currency. This will convert prices (and of course symbols) to currency that was used for payment method. Because VM stores fixed exchange rate for it in moment of order, we can do it safely. But Iam not sure if this is what you asked about? We only display currency that VM stored order in. How your prices are set-up?
2) Sorry, that is partly error in our code. There should be 0%. We will fix that in next release.
3) These strikethrough prices are displayed when there is some override price applied. It's same way how VM displays the order. You can turn them off in Invoice Items Configuration -> Show Prices Before Discount (on right side).
If there is some error, it depends also how order was created - was it created by VM front-end or by VM Invoice back-end? In both cases, it should generate same results; if not, that is error on our side.
Also, please, provide your VirtueMart and VM Invoice version, also make sure you have newest version of both. Thanks much.