Heat oil in a large pan over medium-high heat. Add beef (or lamb) and cook until no longer pink, breaking it up with a wooden spoon and stirring frequently, about 5 minutes.
Add diced onions, celery, carrots, garlic, and seasonings to the pan. Cook until the vegetables soften, about 5 minutes, stirring occasionally.
Add broth, tomato paste, and Worcestershire sauce to the pan, stirring until the paste dissolves. Reduce heat slightly and let it continue to simmer until the sauce thickens, about 15 minutes, before turning off the heat.
Preheat oven to 400 degrees F.
Place steamed cauliflower to a food processor or blender. Add ½ cup cheddar cheese, cream cheese, cream, butter, garlic, salt, and pepper. Puree until smooth consistency, scraping the sides as necessary (See video above for steps on how to steam the cauliflower).
Transfer meat and veggie mixture to a 2-quart baking dish, spreading it in an even layer.
Spread the mashed cauliflower evenly over the meat, then top with remaining shredded cheddar cheese.
Bake for 30 minutes, or until the peaks of the mashed cauliflower are browned. Remove from oven and cool slightly, then garnish with parsley, if desired. Serve immediately.