I was forced to eat as a child as I didn't like very many foods, only a few. It sure did not help me. I was punished most of the time and many nights sat there until I was either hit or ate. Caused damage, please do not do this to her. Not that you would but I don't know what you mean by punish.
Sounds like you don't actually punish her or she'd eat. Don't give her the milk. I know that's hard because she'd cry and carry on, but don't give the milk and eventually she'll get hungry enough to eat. I know this sounds mean but if it's this bad sometimes it's your only recourse. Tell her she gets milk after she eats her food. Start with just a small amount and gradually give her more every couple days and she only gets milk after eating. Also, she just needs plain simple foods as she's a child and sounds like she doesn't like complicated foods anyway. Stick to simple things but nuturishing. It would be tough for a while but she has to eat. She can't live on milk.
How did she get this way? She was probably picky to begin with and then you gave into her which started the cycle. At this point it's the routine, the way life is as far as she's concerned, as this is what it's been. -- My youngest was picky but she'd eat and so for the things she didn't like which was mostly all veggies and some other foods, I would put a small bit on her plate. After a while when I saw she wasn't eating it, I'd make two piles of it, a small pile and big pile and tell her to choose which side she wanted. Of course she chose the small side. But she knew she had to eat it. She saw everyone else eating and she knew it was what was expected. Sometimes if it was food she really hated, I'd offer her catsup on it or something that sweeten it. I didn't like doing it but she'd eat it. Evenually she became a good eater and now as an adult she's actually a very health conscious person.
My grandson is the same way. He only wants bread and oatmeal. He always ate very little and was picky from the start. Then his mother always gives in to him. She started him on bread to start the meal and he'd fill up and wouldn't want anything else. Now he's six and doesnt want anything but bread. I get concerned. He's very small. I've told them to do the same thing and he will get hungry enough to eat what you give him, but they won't. They don't want to go through the head-ache of it all.
With my other grandson that stays with me -- well he can get picky too. But sometimes I let him get hungry, especially if we're having something I know he's not going to like. And then he will eat anything you put in front of him. Don't get me wrong, I'm not letting him get so hungry he's in any danger. He's just really hungry and has built up an appetite and after he eats it he'll say how good it was. But if he's not all that hungry cause he ate snacks he wouldn't eat it and say he doesn't like it even though it's the same food. He'd only eat if it's something he really, really likes.
Well, don't know if any of this helps but I hope so. Just keep trying. How old is she? (hope this makes sense - I'm tired and have to get off this dabnabit machine)