Make the Cake: Mix together the cake mix as directed on package and bake in a 10x15-inch jelly roll pan, greased and/or floured, as instructed on the box. Cool to room temperature.
Make the Filling: Meanwhile, combine the milk and flour in a small saucepan and cook over low heat, whisking constantly, until the mixture thickens to the consistency of pudding, about 5 to 8 minutes. Set aside and cool to room temperature.
Cream together the sugar, butter and shortening on medium speed until light and fluffy, about 3 minutes. Add the cooled flour/milk mixture and beat on high for 7 minutes. Spread on the cooled cake and refrigerate until set.
Make the Icing: In a large bowl, mix together all of the icing ingredients on medium-high speed until creamy and smooth. Spread over the filling on the cake and serve. Cover leftovers with plastic wrap and refrigerate.