Preheat Oven to 450 degrees for regular oven of 425 degrees for convection.
Peel potatoes and cut into small 3/4" dice. The smaller dice allows the potatoes to cook faster. Put in medium pot, and cover by about an inch with cold water. Sprinkle in 1 tsp of kosher salt and set pot on high heat. Turn down to medium high once it comes to a boil.
Meanwhile, sprinkle 1 tsp salt across bottom of cast iron skillet and break up ground beef onto it. Add chopped onions. Cook beef over medium high heat, stirring occasionally, until browned through, about 10 minutes.
Move cooked meat to the sides of the pan, leaving a well in the middle. Sprinkle flour in well and allow to cook, stirring occasionally, for about 3 minutes. Add 1 cup of milk, Worcestershire sauce, beef bouillon and veggies and stir to combine. Set aside.
Check potatoes with a fork to see if they are tender enough to mash. If so, drain water and smash potatoes with a potato masher. Add 1/2 cup milk, 1-1/2 tbsp butter and garlic powder and continue mashing and stirring until smooth and creamy. Check for salt and add if needed. Add freshly ground pepper.
Put meat in a sprayed casserole dish and spoon potatoes on top, leaving about 1/2" along the side to allow for boiling. Smooth potatoes and swirl into a pretty pattern.
Sprinkle paprika over potatoes. Chunk remaining butter and spread pieces across top.
Cook casserole until brown and beef is bubbling, about 10 minutes. Serve immediately.