OP, it seems like you should have hired a babysitter, not a nanny...or maybe you did? I assume when you say "nanny" you mean an experience, educated, professional child care provider, not some 19-year-old college student. If you hired a nanny, whom probably knows more about children than you do (not saying she knows *your* child better) and you should be happy to have her to take care of your child. If you want some mindless idiot watching your kid that's your call, but why have a nanny if your not going to get the perks? The advice?
Both of you handled the situation poorly.
OP/MB: You should have deeply considered your nannies opinions, hopefully she has experience and therefor probably knows what she's talking about. I mean, I hope you didn't hire an idiot? Honestly I think if you would have gotten off your power trip this whole incident could have been avoided.
Nanny: She should have NEVER lied or "disobeyed your orders"

. It's unprofessional, as well as a poor sign of character. If I were her I would have told you my concerns in a logical and rational way, explained why I felt little Johnny may have lactose-intolerance and educated you to the best of my capabilities. Now, if you were to still ignore my Knowlegable concern I would have told you that I will not be able to continue to feed Johnny milk products because I strongly feel as if they are the source of his symptoms. I would probably get fired, it's a shitty situation. As several PP mentioned, all options suck. Do nothing and the child still suffers from vomiting and diarrhea, or "disobey orders" lie to boss but keep child healthy.
Honestly, I would let her go. No, you can't trust her, but I think your biggest issue is the fact that you can't "order" her. Yes, nannies should always respect the parents wishes, follow routine ect...but at the extent of the child's safety, health or well-being? Forget it. Fire me. My job is to protect your child, and I will do it even if it means protecting them from you.
-MB and former nanny