Integers don't have a fractional part. It's entirely understandable (and correct, IMHO) that the int.Parse method does not allow a decimal point in the textual representation of an integer. However, it should throw a FormatException, not an OverflowException.
The OverflowException seems to be specific to the Currency NumberStyle, as most other variations do throw the correct exception.