Numbers also use a group separator to help format large numbers by placing a separator every few digits. e.g. $100,000.00
In the English speaking world the comma (,) is used as the group separator however in large parts of the world the period (.) is used as the group separator.
Money2 use the English convention as default. To switch to the Euro style convention set the invertSeparators argument to true when creating a currency.
You will also need to provide an appropriate pattern.
Currency euro = Currency.create('EUR', 2, symbol: '€', invertSeparators: true, pattern: 'S0.000,00');