Haas had been in superb form en route to the semi final in beating world number one Novak Djokovic and Gilles Simon in straight sets and again looked full of confidence in breaking the Spaniard to win the opening set.
But the 34-year-old German began to look a little fatigued in the second and third sets and unforced errors began to creep into his game against the renowned fighting qualities of the tenacious Spaniard.
Ferrer broke twice in the second and three times in a bizarre third to advance to the final where he will now meet Andy Murray, the second seed beating Richard Gasquet 6-7(3) 6-1 6-2 in the second semi-final..
Haas began the match out-rallying the obdurate Ferrer from the baseline to break the Spaniard to love in the fifth game. In a purple patch that matched his lucky shirt, Haas strung eleven successive winning points together to force three more break points en route to a double break and 5-2. And although Ferrer broke back, Haas served out at the second time of asking.
With Ferrer forcing the German to play every ball, he started to yield his grip on the contest. The crucial break came in the sixth game as Haas hit long. A further break at 5-2 handed the Spaniard the initiative of serving first in the final set but it was Haas who broke first and again in the third game after dropping his own serve in the second.
But with Haas looking to keep the rallies short, he started to miss and Ferrer broke again in the sixth and eighth games before serving out for a place in the final.
Should Ferrer defeat either Murray, he will surprisingly become the first Spaniard to lift the Miami crown.