At times Indian Wells and Miami can seem to be carbon copies of each other, two hot American hard-court events with virtually the same draws, played over back-to-back fortnights. Happily for Li Na, and unfortunately for Dominika Cibulkova, these two women probably feel like they just played carbon-copy matches at each tournament.

For the second time in a month, Li beat Cibulkova in three sets; and for the second time in a month, Cibulkova had Li on the ropes at the start of the third set, only to watch her bigger, stronger opponent blow past her down the homestretch. This time the final score was 7-5, 2-6, 6-3.

Cibulkova has come a long way already in 2014; she’s cracked the Top 10 and reached her first Grand Slam final. But she still can’t beat Li; she’s now 0-7 against the world No. 2, and three of those losses have happened this season. It’s not hard to see why. Both women hit hard and go big at the first available opportunity; but Li is bigger, and can hit harder. If she’s playing well, she has more power and can open the court with sharper angles; if she’s playing well, she’s going to win.

This time both women played better than they had in their error-riddled slog in the California desert. It was windy in Miami, and that led to nine double faults and 14 service breaks between them—as well as countless errant ball tosses that needed to be caught. But on Thursday night, Li and Cibulkova connected on plenty of winners to go along with the mistakes that always come with their risky, streaky games. For much of the match, they traded breaks of serve; Cibulkova, especially, went all-in on her returns.

By the middle of the third, it looked like Domi’s risks would be rewarded. She won the first eight points of the set, and at 3-1 she had a point to go up a double break. Li, who had been reeling, and shanking, for the better part of two sets, shanked another forehand that landed on the sideline, then scooped a forehand off the court and into the corner for a game-saving—and, it would turn out, match-saving—winner. Li went on to hold, and on the second point of Cibulkova’s next service game, at 3-2, she rifled her cleanest shot in an hour, a forehand return down the line, for a winner.

Sometimes a switch seems to go on—or off—in Li’s game, and everything changes; shots that had been going out, go in, and vice-versa. This was one of those switch-on moments for her. She broke with a backhand winner for 3-3, broke again at 4-3, and, despite two horrid, frame-job double-faults at 5-3, she saved a break point and closed it out on her third match point. As she had in the previous round against Caroline Wozniacki, Li managed her way through her lulls and made the most of her hot streaks. She actually lost more points to Cibulkova than she won, 95 to 94, but won the two tight sets.

With the victory, Li advances to her first final in Key Biscayne, and tennis fans get a look at the first match between the WTA’s No. 1 and No. 2 of 2014, when she meets Serena Williams on Saturday. Li has survived some rough patches of play to get this far. She’ll need to do more than that to get her second win in 11 matches against Serena.