In a large bowl, combine the goat shoulder, cumin seeds, mint leaves, crushed garlic, red onions, grated ginger, fresh coriander, tomato paste, beef stock, caraway seeds, fennel, cloves, cardamom seeds, Ras al Hanout spice mix, and vegetable oil.
Cover and marinate in the refrigerator for at least 2 hours, or overnight.
Heat a large pot over medium heat and add the marinated goat shoulder mixture.
Cook for about 10 minutes, or until the meat is browned on all sides.
Add the roasted spice mix, yogurt, and butter to the pot.
Stir well to combine.
Reduce the heat to low, cover the pot, and simmer for 6-7 hours, or until the goat is tender and the flavors have melded together.
Serve hot with rice or couscous.
