Cut shortening into dry ingredients then add vanilla; mix well.
Pat firmly and evenly into a 20 cm (8-inch) square pan. Bake at 175 C (350 F) for 10 to 12 minutes. Cool.
Make the cake:
Cream shortening and sugar; add eggs and vanilla, beating well until fluffy.
Sift flour, baking powder and salt together; add to creamed mixture alternately with milk.
Pour batter into a greased and floured 20 cm (8-inch) square pan.
Bake at 175 C (350 F) for 35 to 40 minutes.
(For marble cake: Reserve 250 ml (1 cup) cake batter and add 1 heaping tablespoon of cocoa and 15 ml (1 tbsp) of milk. Mix until smooth. Pour some of the white batter into the pan, then chocolate batter. Top with remaining white batter. Cut into batter with knife and swirl.)
Make the frosting:
In small saucepan, stir together milk and flour. Cook, stirring constantly, until mixture is thickened and smooth. Cool.
On highest speed of mixer, beat cooled flour mixture with butter, shortening and vanilla until smooth and fluffy.
Blend in icing sugar and salt; continue beating until frosting is very fluffy. This will take at least 15 minutes.
Assemble the cake:
Place shortbread base on serving plate; spread with small amount of frosting.
Place cake on base.
Cover top and sides of cake with remaining frosting. If desired, garnish sides of cake with shaved semi-sweet chocolate.