I am pretty sure its a phase, and it will pass. All mine started fine with meat (Haz still prefers gnawing on a snag) and then 'went off' it.

Many veges are good for iron so don't stress about that too much - its the b12 you need to keep up in the interim. Look for b12 fortified foods that the will eat until it passes. Can't rightly say how long that will be - all my kids were off it for different lengths of time. Angie was the longest where it was a couple of years until she just ate meat because she wanted to - not because we told her she had to eat x amount of each item on her plate for dessert.