Measure first three ingredients into saucepan and mix thoroughly, then stir in milk until smooth.
Place over medium heat and cook while stirring constantly until VERY THICK. If not smooth when partially cooked, beat with rotary beater until smooth and then continue cooking.
Remove from heat and turn into a 2 or 3 quart mixing bowl. For quick cooling-place bowl in cold water. Mixture should be cool enough to NOT melt butter.
Remove a stick of butter at a time from refrigerator, cut butter into 1/2" pieces. Beat butter into cooled mixture about 2 Tbs at a time, beating until smooth after each addition of butter.
When all butter is incorporated beat in flavoring. (Other flavors of extract can be used with success).
Entire beating takes 8-10 minutes. Frosting will spread more evenly if chilled 5-10 minutes after mixing. Thickly covers 3-9" layers. Store cake in refrigerator until serving.