Place margarine in a mixing bowl. Fluff with mixer.
Add sugar, small amounts at a time.
Add eggs one at a time.
Add flour a little bit at a time alternating with the milk.
Add the vanilla.
Spray cake pans with Pam and dust lightly with flour. Cake will make 4 layers. If you only have 2 cake pans [like me -- ], you can bake in 2 shifts (2 pans at a time).
Bake at 350F for 25 minutes.
After taking the final pans out of the oven, let cool. You can begin cooking the frosting here.
Put sugar in a 3-qt. sauce pan. Add water. Stir a little to dissolve sugar.
Bring to a boil and stop stirring.
Lower heat to medium, bring to soft ball stage, until it just begins to spin a thread while it cooks. Remember, do NOT stir the frosting while cooking. The process will take about 15-20 minutes.
Meanwhile, beat egg whites until stiff.
Pour cooked syrup (mixture in saucepan) into the egg whites in a thin stream while you beat it with a spoon. Beat for a few minutes to cool it a little.
Add coconut and coconut flavoring.
When it starts to cool a little, it is ready to frost the cake. Wait 10-15 minutes for this to occur.
While frosting, keep this in mind: frosting tends to separate (the syrup has higher density and will fall to bottom of bowl). Make sure that you keep the frosting homogenous (mixed) while frosting. Frosting is very thin, so it will fall off of the cake. Make sure to frost on the platter that you will serve the cake on. Also, keep reapplying the frosting that falls off until almost all is reabsorbed.
Fresh coconut will stick to sides and syrup will absorb into cake.
This is the most moist, delicious, yummy cake in the world! Perfect for an anniversary or holiday!