Preheat oven to 350 degrees F and pull out a 9x13 casserole dish (or similar size).
In a large pot or stew pot, add cold water. Peel and cut the russet potatoes into large chunks and add to the pot. Place the pot on the stove and heat to boiling, then reduce heat slightly (so water doesn't boil over). Boil the potatoes until they are tender when pierced with a fork.
While potatoes are cooking, take the onion and dice it into small pieces.
Heat a large skillet over medium or medium-high heat and add the ground beef and diced onion. Cook, stirring occasionally, until meat is browned. Add ½ teaspoon salt and ¼ teaspoon black pepper and stir.
Add 1 tablespoon Worcestershire sauce, 1 cup beef broth, and 2 tablespoon butter to the pan. Cook, stirring occasionally, until butter is melted.
Sprinkle the 2 tablespoon flour over the meat and mix in to thicken broth into a gravy.
Add the frozen peas and carrots and cook for 10 minutes to soften.
Drain the potatoes, return to the pot, and add 1 cup heavy cream OR milk, 2 tablespoon butter, ¼ teaspoon garlic powder, and ½ teaspoon salt. Mash with a potato masher until smooth and creamy. (If needed, add more milk/cream/butter).
Into the casserole dish, pour the beef mixture. Then top with dollops of the mashed potatoes and smooth out. Sprinkle with dried parsley, if desired.
Cook in the oven for 25-30 minutes. Remove from oven and serve.