I think we have the same 2 yr old. We have the same routine and she takes FOREVER to fall asleep. She also would not go to sleep for anyone but me. Having another person do it would only prolong things and get her upset and wound up! A lot of books suggest a lovey, like a blanket or doll. Mine doesn't accept anything. She's also one that liked to fall asleep with milk. (We nursed till 2 months ago) If she asks for milk, I do let her have a sippy cup of water. The kind that doesn't leak. She will drink some and hug it for a while, then ask me to put it on her night stand. And repeat that for 3-5 times. Well, tonight she only did that once so maybe she's getting better. We also sing ABC's very slowly and this song that includes everybody in our family and extended family. I think it helps her like how counting sheep help some people. I also sometimes count with her. But according to Elizabeth Pantley (author of the No-Cry series), the bedtime routine should start 60 mins before you need her in bed because that's how long it will take.
There are many factors to why a child takes a long time to fall asleep like eating stimulating foods too late at night, not having enough food/water, nap situations, etc. But overall, I think what you're doing is great and it's normal for her to take that long to fall asleep especially since she is not used to not having the milk. If that's the case, it'll get better as she gets used to it not relying on the milk. Sometimes it takes me that long to fall asleep too.