When I first got Peek a Boo, my vet (at that time) told me not to feed him more than 1/4 cup of food twice a day. He was and is a very active dog, and I believe that has to be taken into consideration. He started off at 5 lbs at 5 years old. When his coat grew in, that alone added 1 lb. He had issues: stealing cat food, not playing well with others. Thinking about it, I decided the vet was goofy, as Peek wasn't like fat or anything... and after observing him for a month or more I decided maybe his attitude stemed from not having enough to eat. So I did increase the amount of food he was getting, as I am not concerned with his size as much as I am his health and well-being. Things got better and he seemed to calm down some. Now, at 13 years old, he will still steal cat food, but he is much happier and weighs between 7 and 8 lbs. He is still very active, and cleans his bowl most days. He also loves treats...so now I keep an eye out that he doesn't gain but maintains his weight and good attitude. His food is adjusted according to his activity level, not to keep him the size people think a Yorkie should be.
When getting him to eat dog food I occasionally will add 1 tsp or so of cat food to entice him to eat. It's very stinky, and he just loves it. So it is a hard habit to break, and eating some catfood is better than not eating anything at all.