So based on that research I am going to assume the issue is with Whatsapp and not Fido specifically. If the Whatsapp code is doing strange things and invoking the incorrect dialer (cellular vs data) then you could experience what you are describing but fido certainly cannot charge LD for using data.