Fourth seed Justine Henin-Hardenne beat defending champion Amelie Mauresmo to set up an all-Belgian final against Kim Clijsters at the Rogers Cup.
Henin-Hardenne won 7-5 3-6 6-1, winning six games in a row after Mauresmo broke her to win the opening game of the deciding set.
Cljisters, the seventh seed, beat ninth seed Anastasia Myskina 6-4 6-1.
The Belgian rivals have not met since Henin-Hardenne beat Clijsters in the 2004 Australian Open final.
"I think Kim and I know each other very, very well," Henin-Hardenne said.
"It's always been a motivation for both of us to see the good results of the other. So I think it's great for Belgian tennis that we are back at the same time."
Clijsters is looking for her sixth title of the year after victories in Indian Wells, Miami, Eastbourne, Stanford and Los Angeles.
"Justine is probably the best defending player out there at the moment," she admitted.
"She's very fit. She just has this incredible touch, especially with her slice. I mean, she can just keep getting those balls back."
Myskina, who was hampered by an ankle injury in her match, has pulled out of next week's WTA event in New Haven, Connecticut, along with US Open champion Svetlana Kuznetsova, who has a back strain.