You are right, Leverkusen had a bad performance from the beginning of the season but now they are playing well to the extent that they have a close gap between them and Bayern Munich, Bayern Munich was leading the table of the league with 9 points but after losing and drew some games their points reduce and Leverkusen use that opportunity to play well and win their matches and close the gap between them, Bayern Munich is still leading in the table of the league but before the season we are going to see a surprise result.
Leverkusen's performance has become like the way they played last season, they will always find a way to win the match no matter how strong the opponent is, Leverkusen is scoring goals than Bayern Munich in their last five matches which shows that Leverkusen is planning something and Bayern Munich did not take care Leverkusen is going to win the League title and let them end a season trophyless.
Bayer has become more stable, this is what they have lacked since the beginning of the season, and now the decisive games will be with strong opponents, like Dortmund. I think that Bayer is able to beat them now, but Dortmund is too stubborn at home, so I admit that they can lose points. For now, I do not admit that Bayern will allow Bayer to get close enough to worry, the most important thing is to not allow such games as the one with Mainz.