Preheat your oven to 350°F (175°C). Lightly grease a 9x13 inch baking dish.
In a mixing bowl, prepare the cake batter by combining the cake mix, eggs, vegetable oil, and water. Mix until smooth and lump-free.
Pour the batter into the prepared baking dish and spread evenly.
Bake for 25 minutes or until a toothpick inserted in the center comes out clean.
Remove from the oven and allow the cake to cool completely in the pan.
In a saucepan, whisk together the flour and milk over medium heat. Stir continuously until the mixture thickens into a paste-like consistency.
Remove from heat, add vanilla extract, and let it cool completely. This step is very important.
In a separate bowl, beat the softened butter and sugar together until light, fluffy, and pale in color.
Add the cooled milk mixture to the butter mixture and beat until smooth, creamy, and slightly whipped.
Spread this cream filling evenly over the cooled cake layer.
Gently spread the whipped topping over the cream layer, smoothing it out with a spatula.
Chill the cake in the refrigerator for at least 2 hours before slicing and serving.