2. Place a Dutch oven on medium high heat for about 2 minutes.
3. Pour oil and add lamb in it. Turn and cook lamb evenly on all sides for about 10-12 minutes or until brown. Transfer it to a plate, and set it aside.
4. In the same Dutch oven, drop onions, stir and cook for about 2-3 minutes or until softened.
5. Add garlic and cook for 30 seconds for flavor to infuse.
6. Pour wine, stir and scrape off the bits sticking at the bottom. Bring it to a boil.
7. Drop cranberries, beef stock, honey, chipotle, and cumin. Mix, and cook for about 5 minutes or until cranberries starts to pop.
8. Place the lamb back into the Dutch oven. Cover it tightly with lid or foil.
9. Pop it in oven and cook for 2-2 ½ hours turning lamb shanks occasionally.
10. On a serving platter, transfer the lamb and cover it with foil to keep it warm.
11. Skim away the fat from the sauce in the Dutch oven. Turn the heat to high and allow it to reduce into half, for about 8 minutes.
12. Season it with salt and pepper.
13. Pour sauce on lamb and serve it hot with cilantro garnish.
You can use heavy cast iron skillet or Dutch oven to prepare the dish.