Frenchman Simon made a strong start to just his second Masters 1000 final appearance, breaking the Swiss in his first service game of the match.
Federer eventually got the set back on level terms before saving a couple of set points in the first tiebreak to edge the opener.
Simon had the advantage again early in the second as he tried to get back into the match, but a wrist problem hindered the world number 29.
The Frenchman dug deep to serve for the set, but the 17-time Grand Slam champion forced a tiebreak again when Simon slipped, landing face first on the court.
Federer quickly amassed a 6-2 lead in the tiebreak against a weary Simon, before wrapping the title up with a return winner.
The title is Federer's fourth of the year, and the 81st of his career.