Bring a large pot of salted water to a boil. Add potatoes and cauliflower and cook for 12 to 15 minutes until fork-tender.
While the potatoes and cauliflower cook, preheat oven to 400°F. Heat olive oil in a large skillet over medium heat. Add onion, carrots, celery, and finely chopped mushrooms. Cook for 6 to 8 minutes until softened and the moisture has cooked off.
Add ground lamb and cook until browned, breaking it into small crumbles. Stir in grated garlic and cook for 30 seconds until fragrant.
Add tomato paste, Worcestershire sauce, Okie Rub, salt, and black pepper. Stir well to coat the meat and vegetables evenly. Sprinkle flour over the mixture and stir to combine. Cook for 1 minute to remove the raw flour taste.
Slowly pour in beef broth while stirring and scrape the bottom of the pan. Simmer for 5 to 7 minutes until thickened into a rich gravy. Stir in peas and remove from heat.
Drain the potatoes and cauliflower well and return to the pot. Let sit for 1 to 2 minutes to allow excess moisture to evaporate.
Add butter, milk, garlic powder, salt, black pepper, and parmesan. Mash until smooth and creamy.
Transfer the lamb filling to a 9x13-inch baking dish or a 12-inch oven-safe skillet. Spread the mash evenly over the top and use a spoon or fork to create texture. Bake for 20 to 25 minutes until bubbling and lightly golden. Broil for 2 to 3 minutes at the end if desired for extra color. Let rest for 5 to 10 minutes before serving.