Whisk together your flour and sugar in a medium saucepan over medium heat. Cook for about 2 minutes to toast the flour. Be careful not to burn it!
Slowly add in your milk, whisk to combine, and bring your heat to medium-high. Bring the mixture to a simmer, whisk continuously until it is thick and pudding-like. Once it's simmering, cook for one minute more.
(Optional) If your mixture has any lumps, place a colander on top of a heat-proof bowl and push your mixture through and into the bowl. Transfer the mixture into a heat-proof bowl. Cover the mixture with plastic wrap so that it is touching the surface without any air bubbles in between, this will prevent a skin from forming on the top of the mixture. Let cool in the refrigerator for a few hours or overnight. You can also transfer the mixture to a sheet pan, spread it out, cover it with plastic, and put it in the freezer for about 30 minutes to cool faster. Make sure the mixture is completely cool or it will melt your butter.
Add your softened butter to the bowl of your stand mixer and whisk on high until very light and fluffy, about 2-3 minutes.
Once the butter is fluffy, place the cooled flour mixture into a piping bag and slowly pipe it into your butter as your whip. Incorporating slowly ensures a smooth buttercream.
Add in your vanilla and salt, then mix until everything is creamy. Use it to frost your cooled cake. This buttercream will set quickly, so it's best used immediately.
Video
Notes
After your ermine frosting is fluffy and white, you can whip in ¼ cup sifted cocoa powder to make this chocolate.
Make sure your flour mixture is completely cool before making your frosting
Ermine frosting does not work well the next day. It's best to use it right after you make it as it tends to "set" and not stay creamy.
Ermine frosting is not ideal for using under fondant because it is very soft but it is great for using it as a filling between layers.