Preheat the oven to 400°F.
Pour a few inches of water into a large pot lined with a steamer basket and bring it to a boil. Add the cauliflower florets, cover, and steam until they are very tender, about 10-12 minutes.
Using a hand mixer or food processor, blend the cauliflower with 2 tablespoons of ghee, 1/2 teaspoon of salt, and 1/4 teaspoon of black pepper until smooth.
Meanwhile, heat a tablespoon of ghee in a large skillet over medium high heat. Add the onion, carrot, and celery and cook until tender, about 5-6 minutes.
Add the garlic and cook until fragrant, about 30 seconds.
Add the ground lamb or beef and cook until brown.
Stir in the tomato paste, Cholula, thyme, parsley, 1 teaspoon of salt and 1/2 teaspoon black pepper.
Dissolve the arrowroot powder in the beef stock, then add to the skillet. Bring to a simmer and cook until the mixture thickens, about 5 minutes.
Lightly grease a 3 quart casserole dish with the remaining teaspoon of ghee. Add in the meat mixture, then spread the mashed cauliflower in an even layer on top.
Bake for 30-35 minutes, until the top turns golden brown.
Allow to cool for 5-10 minutes before serving with more Cholula.