Great point! I noticed this last week but had been unsure of what to do about it. I think your solution is a good one. Here's what I'll be rolling into the next release of the plugin (current release is 4.1.6):
function foxyshop_currency($input, $currencysymbol = true) {
global $foxyshop_settings;
if (function_exists('money_format')) {
$currency = money_format("%" . ($currencysymbol ? "" : "!") . ".2n", (double)$input);
} else {
//Windows: no internationalisation support
$currency_code = ($foxyshop_settings['locale_code'] == "en_GB" ? "£" : "$");
$currency = $currency_code.number_format((double)$input,2,".",",");
}
if (strpos($foxyshop_settings['locale_code'], "utf8") === false) $currency = utf8_encode($currency);
return apply_filters("foxyshop_currency", $currency);
}
Can you try replacing the function in helperfunctions.php and see if that works for you?