The German failed to win a match in her last tournament - falling to unheralded Estonian qualifier Anett Kontaveit in the second round in Rome after being granted a first-round bye.
It is a second consecutive first-round loss at Roland Garros for Kerber, who won the Australian Open and US Open titles past year and reached the Wimbledon final. But this year has been much more of a struggle: The German has a 19-13 record, losing 4 of her past 6 matches. She is seeded 15th in Paris.
Kvitova had not played in a tournament since she was stabbed during an attack at her home in the Czech Republic in December.
Makarova, now ranked 40 after reaching a career high of eight, was a double break ahead again for 3-0 in the second set. But that was about it.
Four successive breaks of serve followed before Makarova saved seven break points in the crucial eighth game to cause the upset.
"It's a pleasure to be here, I'm really glad to have made the decision that I'm going to play here", Kvitova said afterwards. "I was also fighting with my emotions not to wait for a mistake (by Kerber)", she said courtside.
Kvitova, a French Open semi-finalist in 2012, will face Bethanie Mattek-Sands or Evgeniya Rodina in the next round.
With Kerber defeated, the World No.1 ranking can change hands after the French Open.
Kvitova, a two-time Wimbledon champion, had very little trouble in her return, beating 86th-ranked Julia Boserup of the United States 6-3, 6-2 in 74 minutes. "I won already, before".