First, the medical expenses in hospital and all the check-up are very expensive for a foreigner. For example, roughly $8000 canadian dollor per day to stay in the hospital (natural birth). Plus you will incur other check-up expenses.
Second, after giving birth, the kid will be a Canadian (you also can choose not to be). Then you need to go through all the procedures and troubles to bring the kid back to China, such as long-term Chinese visa (needs to be renewed periodically) and/or adoption certificate, etc... (can't remember clearly, you can search online)
Third, becasue the kid is a foreigner in shanghai, the life in Shanghai will not be convenient, also the living cost in Shanghai will be super super expensive. As you know, everything charge to foreigner is more expensive than local people in Shanghai, including education, medical, etc......
So, althought it's a good idea to let your kid has Canadian citizenship and has more options, it's really not as easy as you image. If you want to do so, you need to be well-prepared, both psychology & financial ability, to meet many troubles & difficulties you never thought about.
I can't type Chinese right now, hope you can understand what I am talking about. Good luck.