This recipe can be made with or without the vanilla bean; increase the amount of vanilla to 2 teaspoons.
Split the vanilla bean in half and add into a sauce pan along with the milk and flour. Whisk the flour in until no clumps remain. Cook the milk over medium-low heat for approximately 5 minutes, until the milk is steaming hot but not boiling. Remove the vanilla bean and scrap out the seeds with a knife and add the seeds to the milk, discarding the pod.
Meanwhile, in a separate mixing bowl, combine the egg yolks and sugar. Whisk vigorously for 2 to 3 minutes until the mixture is thick and pale and ribbons off of the whisk. In a small ramekin, combine the cornstarch and water to create a slurry. Add the slurry to the egg yolk mixture and whisk for 30 seconds.
Once the milk is hot, slowly temper the milk into the egg yolks. Add a little at a time and whisk well after each addition. Once the two mixtures have been combined, pour the custard base back into the saucepan. Cook the mixture over medium-low heat for 5 to 7 minutes, stirring constantly with a rubber spatula. Custard is ready when it holds its shape on the back of the spatula. Avoid cooking over high heat; this can cause the custard to separate.
Remove the custard from heat and add the 1/2 cup butter and vanilla extract. Whisk the butter into the hot custard until it's completely melted. Cover the custard with plastic wrap touching the surface, to prevent a film from forming on top. Refrigerate the custard until completely cooled, then use as a filling or for the custard buttercream.
Making German Buttercream:
For the buttercream. first beat the softened butter on high speed for 2 to 3 minutes until the butter is light and fluffy. Begin adding the cooled custard, a few tablespoons at a time, and whisk on medium speed after each addition. After adding the last few tablespoons, whisk for just 30 seconds. If desired, add an additional 1 cup confectioner's sugar to sweeten the frosting.