Schiavone crushed fourth seed Elena Dementieva 6-3, 6-1 to spoil the Russian's 24th birthday while 30-year-old Pierce overcame teenager Dinara Safina 7-6, 6-3.
Schiavone, who had already knocked out second seed Amelie Mauresmo and 2004 U.S. Open champion Svetlana Kuznetsova to reach the last four, continued her giant-killing run at Moscow's Olympic sports complex.
"I was very focused, very motivated and I had good tactics," said Schiavone. "I was also very tough today just like when I played Mauresmo and my other matches here.
Schiavone took control at 3-3 in the first set when she won the next seven games.
After wasting her first two match points Schiavone finally put the home favourite out of her misery in just over an hour.
"I must admit, she surprised me a lot by playing such good tennis today," said a visibly disappointed Dementieva who was looking for her first Kremlin Cup crown after losing to her Fed Cup team mate Anastasia Myskina in last year's final.
"She was hitting heavy top-spin balls which I could not get used to. Somewhere midway through the first set I lost my rhythm and could not find it until the end.
"I'm very disappointed not because today is my birthday but because I felt like I had a very good chance to finally win this tournament and I just couldn't come up with the goods."
FIRST TITLE
Schiavone admitted that she would be nervous no matter who she would face in Sunday's final.
"Of course, I'll be nervous," said the 25-year-old Italian, who is still looking for her first WTA title.
"Winning my first title is a big goal of mine and I've been working very hard for that. Maybe I'll have my big moment tomorrow here."
Pierce, who saved six match points in her quarter-final against Elena Likhovtseva, had a much easier time against the younger sister of Australian Open champion Marat Safin.
Likhovtseva had led 6-0 in the final-set tiebreak of their match but somehow allowed Pierce to win the next eight points for a sensational comeback after nearly 3 1/2-hours of battle.
"I had a very tough match yesterday but I was able to get some rest and felt fine today," said the Frenchwoman, who won here in 1998.
"I knew that Safina also had a difficult match yesterday and I tried to play longer rallies to make her run as much as possible so she would get tired."
Safina, who produced a spirited comeback to oust top seed and world number one Maria Sharapova on Friday, blamed fatigue from playing both singles and doubles on her poor showing against the French and U.S. Open finalist.
"I've played 12 sets of tennis in the last two days and I feel really exhausted right now," the 19-year-old said.
"I tried my best and fought to stay in the match but after losing the first set I just had nothing left."
In the men's final, sixth-seeded German Nicolas Kiefer will take on Russia's seventh seed Igor Andreev.
Andreev outlasted his Davis Cup team mate Dmitry Tursunov 5-7, 7-5, 6-2 while Kiefer prevailed over Russian qualifier Igor Kunitsyn 6-2, 6-4.
More from rediff