Line an 8 inch metal pan with foil and spray foil with cooking spray.
Mix together the flour, baking powder and salt. Set aside.
In a mixing bowl, cream butter and sugar. Stir the flour mixture into the butter mixture until fully blended. Break up the dough and scatter it evenly over the bottom of the pan, then use dampened fingers to press into an even layer. Dock with a fork and chill dough for an hour.
Preheat the oven to 325° F. Bake the chilled crust for 25 minutes, then let cool while you make the caramel layer.
To make the caramel layer, put the butter in a heavy bottomed 2 quart saucepan and melt over gentle heat. Remove from heat, then add the brown sugar and stir until dissolved. Still off heat, stir in the condensed milk, corn syrup and salt. Bring mixture to a simmer and cook over low to medium low (just keep it at a simmer with heat slowly rising), stirring often, until it reaches 237 degrees F. This should take about 15 minutes, so don't rush it. To avoid brown bits, use a wooden spoon for stirring and don't scrape the sides of the pot if you can avoid it.
Quickly stir in the vanilla, then pour over the shortbread. Break up the milk chocolate (or slap on a whole bar) and set it on the hot caramel. Cover pan with a heavy duty baking sheet or other large flat object to hold in the heat and soften chocolate. This should take about 5 to 10 minutes.
Most Fun Part: Using the back of a spoon, spread the softened chocolate over the firm (but still warm) caramel and let it all cool at room temperature. Transfer to the refrigerator.
To serve, lift bars from pan using foil. Cut into squares. If it's rock hard, let it sit at room temperature for about 20 minutes.