Not sure I've got much to add, but the moral case for veganism is imo weakened by the fact that we're obligate omnivores. Evolution has placed certain constraints on us. We also get ill if we don't eat at least some cooked/marinaded food. A totally raw diet is no good for us - we've evolved to depend on cooking to do some of the digestion for us.
At the very least that fact makes the choice to avoid animal products something dependent on modern scientific industrial society. If you eat a mix of veg, fruit and meat, you easily get all the nutrients you need without having to think too much about it. That's because we are 'naturally' omnivorous. If you're a dairy/egg-eating veggie, you're also likely to be fine. Vegans have to be a little careful to make sure they're getting enough complete proteins, and that's easy enough - bowl of rice and beans will do it. But vit B12 is a problem, one that can only be overcome via modern industrial knowledge and processes. Until very recently, it was impossible to eat a healthy vegan diet.
I've no problem at all with people advocating vegan diets, and I'm certainly not going to mock anybody for it, but I do have a bit of a problem when vegans preach at non-vegans about the evils of an omnivorous diet, the very diet that we have evolved to eat.