Java desktop but the code is common. I made a local patch in Locale.pas and it works :
if (aLocaleID <> java.util.Locale.ROOT) then begin
var lCurrency := java.util.Currency.getInstance(aLocaleID);
fNumberFormat.Currency := lCurrency.getSymbol;
end ;