Hi Monika,
This is explained in the Lufthansa page here->
http://www.lufthansa.com/online/portal/lh/in/local?nodeid=3116855
In short, if ur flight has only one stop in Frankfurt/ Munich, u do not need a Transit Visa since u have Canadian Visa.
But if ur flight has two stops in 2 Schengen Area Countries (even when there is no stopover/ disembarkation) , u need a Transit Visa....
Suggest you also consider the BA flight via London....ppl have said good things abt it and u don't need a Transit Visa in UK.....