You really do just need to take it away and be done with it. She'll be fine for a few days without milk if she chooses not to take it from a cup. I'd get rid of the bottles and not even offer her milk at bed time. When she asks for it, offer the cup, if she won't have it, say "that's fine" and put the cup in the fridge. I promise her will isn't going to outlast yours if you are consistent. It may take 3 days, or it may take a week, but she WILL transition. Just stick to it! This is one of those decisions that you have to make for her. The best part is that she won't even remember it. It's not like she'll be graduating from high school and say, "You know mom, I really resent that time you took my bottle away and gave me milk in a cup."
As far as the eating thing -- she really will eat when she's hungry. If you get in the habit of letting her plan your family's menu, you're in for a lot of chicken nuggets and hot dogs! And things will only get crazier when #2 comes along with his/her own meal-time demands. When we made the decision that a)we weren't going to be short-order cooks at meal time, and b) our children would eat a variety of foods (and not just "kids menu" fare), it was a lean couple of days for our kiddos who were about 2 and 4 at the time. My daughter skipped at least a whole day of meals except maybe her afternoon snack (which I limited, because I knew she'd try to eat her weight in goldfish!). For dinner the next night we prepared salmon with rice and asparagus -- and they both ate it. To say we felt triumphant is an understatement.
If she's skipping dinner to hold out for breakfast, that's absolutely fine. 2 yr olds hardly need ANY food to survive. Really, a couple of broccoli florets, half a cup of pasta, and a piece of lunch meat is a meal -- maybe even more than a meal.
Also, any new food needs to be offered about 10-14 times before they'll consider tasting it. I tested this theory with blueberries for my son. I put one blueberry on his plate at breakfast every morning for 2 weeks. He played with it, asked what it was, rolled it around. I didn't say a thing about it. On day 15 he ate it and asked for more. Did the same with broccoli. Simply put it on his plate every night at dinner and didn't say a word. If he said he didn't want it, I told him that was fine, and that he could leave it on his plate or set it on his napkin. It took about 10 days for him to eat it, and now eats it witout complaint.
What I've learned with my kids and friends' kids is that "picky eaters" really aren't that picky at all -- they're just kids who are very good at controlling what their parents give them to eat.
At age 2, WHAT she eats is your decision. WHETHER she eats it is hers!
Your job is simply to offer nutritious food at regular intervals, her job is to eat what she needs to make it to the next meal.