Well, in the United States, there is no law for "morality". The word use in the US is "obscenity" and it is constantly fought for being vague. I would assume in Canada, "morality" would also be considered vague. Legislators may have wrote up those laws, even though they don't represent everyone as "we" in Canada.
If you are not represented, show where those bylaws are wrong and out-dated. Asking your MPs will help by showing a group/organization of complaints, but fighting the tickets will work faster by showing proof the bylaw is wrong in certain instances and therefore forcing a change. The more you get on board the stronger your fight and win.
If you don't, those bylaws, as wrong as they are, will be illegally enforced and continue to be bothersome. You don't want to live in fear due to some legislative process' result. Change has to start somewhere, even if you have to find (say) another law that allows you to breech a law for your own self preservation. Especially if a "bylaw" (which is not a criminal law) is in the way.
Best of success!
Gyaos