First be sure your food and treats have no added color. Stick to white or pale colored "cookies" and treats. Examples would be Old Mother Hubbard's puppy training biscuits, or IAMs biscuits or Nature's Recipe Lamb and Rice Bones. Better quality foods usually don't have color added. If the stools have a red tinge or if you use canned as a supplement check for a pinkish tinge. If it's there, chances are the food has been colored.
In many areas of the country, water is very hard, has a high iron content or has chemicals that aren't good for you or your little dog. Use bottled water or have a reverse osmosis water purification system installed in your home. (In some areas the water is so hard it is known to contribute to kidney and bladder stone formation in both people and pets.)
A stainless steel bowl is best. Shih Tzu, being a "brachycephalic," or short faced breed, prefer shallow bowls. Stainless steel is bacteriostatic, it doesn't chip or crack and is easy to keep clean. Some plastics are known to discolor faces. Plastic absorbs odors. Food or water left in plastic containers may have an unpleasant odor, undetected by humans but quiet obvious to dogs who have a much more developed sense of smell.
Some folks like to add a little cider vinegar to the water or even lemon juice. We found that our dogs didn't seem to drink as well. Adding about 100-200 mg. a day of vitamin C daily won't hurt, if you'd like to do that. Some vets say it works, others say it doesn't. A naturopathic vet recommended that I try a zinc supplement for face stain.
If tear ducts are blocked, often tears will spill over and possibly stain the face. Take your thumb and forefinger and gently massage the bridge of the puppy's nose up on the sides under his eyes. Most dogs like this. At first do it once or twice daily for a week or two then just once or twice a week. You may be surprised after a while when the hair starts to grow back in white.
Sometimes an eye inflammation contributes to the eye stain. It is probably "conjunctivitis." You can have your vet check to be sure. You can order or ask your vet for Tetracycline ointment, commonly called "Terramycin." Some folks like to use oral tetracycline. I am afraid we don't recommend it. Ask your vet. We would only recommend this as a last resort. Tetracycline can cause seriously upset stomachs and has to be eliminated through the kidneys. It is best to save an antibiotic for when it is really needed. And then always use enzymes and friendly bacteria to reseed the intestinal tract.
The final thing to do is make a dilution of 1:1 part distilled water and 3% hydrogen peroxide. (This is the weak antiseptic strength.) We use a spray bottle, gently spray under the eyes (avoid getting into the eye). We also use to spray on cotton balls for cleaning the eye and mouth area as needed.
Some people use powders or corn starch under the eyes and on the moustache. Corn starch is fine, talc is not advised. Some dogs will tear and react to powders of any sort coming near their eyes. So use your own judgment here. When we use powder, we use a cosmetic "blusher applicator" brush. Some people use a baby toothbrush or use their fingers to work the cornstarch in. A plastic bottle with a pointed snipped tip is okay, too. You may add 1-2 Tbsps to 1/2 cup of boric acid powder to your cornstarch. Do not use boric acid if there is a chance of another dog chewing on the face hair. Don't get into the mouth. It is caustic to the stomach. The boric acid will help dry, whiten and kill germs on the face hair.