In a saucepan large enough to hold the lamb in a single layer (or in batches) over moderate heat, heat the oil.
Pat the lamb cubes dry with paper towels and brown them, over medium high heat, for about 10 minutes until brown on all sides.
As each batch is done, remove them to a bowl.
When the lamb is brown, discard the fat from the saucepan and replace it with the butter.
Melt the butter over moderate heat, then add the onion and celery and cook uncovered, stirring once or twice, for about 5 minutes or until tender.
Add the garlic, curry powder and cumin and saute for about a minute to cook the spices.
Add the tomato paste to the curry, then whisk in the chicken broth, thyme and bay leaf.
Return the lamb to the saucepan and add the carrots and potatoes and season with ½ teaspoon of salt.
Bring the liquid to a boil over high heat, cover and simmer, over low heat, with the lid ajar, for 1 to 1¼ hours or until the lamb and the vegetables are tender.
Strain the solids, and thoroughly degrease the juices.
Discard the bay leaf and return the degreased juices to the saucepan.
Over high heat, boil the juices down until 1 cup remains.
Add the coconut milk, return the meat and vegetable solids to the pot and simmer the stew to reheat.
Stir in the lime juice and season with salt and pepper to taste.
Serve over plain boiled rice and garnish with cilantro.
↑ If you can't find boneless
lamb shoulder, buy 3 to 3¼ pounds of lamb shoulder chops. When you get them home, cut out the bones and remove as much of the fat as possible. Cube the remaining meat into 1-inch dice.