01 - Preheat the oven to 375°F.
02 - Heat olive oil in a large Dutch oven over medium-high heat. Brown the lamb cubes on all sides in batches, then set aside.
03 - In the same pot, add onion, carrots, and celery. Sauté until softened, about 5 minutes. Add garlic and cook for 1 minute more.
04 - Stir in tomato paste and cook for 2 minutes. Deglaze with red wine, scraping up browned bits from the bottom. Simmer until reduced by half, 3-4 minutes.
05 - Return lamb to the pot. Add stock, thyme, bay leaf, salt, and pepper. Bring to a boil, then lower heat and cover. Simmer gently for 1 hour, stirring occasionally.
06 - Remove bay leaf. Stir in peas, parsnips or turnips, mushrooms, and Worcestershire sauce. Simmer uncovered for 10-15 minutes until vegetables are tender and sauce is thickened. Adjust seasoning as needed.
07 - Meanwhile, boil potatoes in salted water until fork-tender, about 15-20 minutes. Drain well.
08 - Mash potatoes with butter, warmed milk, salt, and white pepper until smooth. Stir in Parmesan cheese if using.
09 - Spoon lamb and vegetable mixture into a 9x13-inch baking dish. Spread mashed potatoes evenly over the top, using a fork to create decorative peaks.
10 - Bake for 30-35 minutes until filling is bubbling and potatoes are golden brown. For extra browning, broil for 2-3 minutes at the end.
11 - Let the Shepherd's Pie rest for 10 minutes before serving to allow the filling to set.