I've flown in both directions. On the one occasion I flew LH, it was outbound via YVR and inbound via YYC. The total travel time should be quite a bit shorter via FRA than via Asia, as you'll be going YYC-YVR-SIN-BOM or YYC-LAX/SFO-SIN-BOM, usually with a fair bit of transit time in different airports. However, despite the added time, I prefer flying westward via SIN on SQ (in the past I've also flown to BKK on SQ, then taken TG to BOM).
I don't see that BD actually flies from LHR/LGW/MAN to BOM, but regardless, I avoid LHR if I can. The connection time in FRA via YYC is very good outbound (2-hour wait), but a 6-hour wait inbound. The arrival in BOM is after midnight, whereas if you fly in from SIN or BKK you get in morning or late evening (if that matters to you), depending on the flight you take.
If you can't get AC to cooperate with the booking, try a TA.