Heat the oil in a frying pan and, in two batches, brown the lamb pieces lightly all over. Lift out with a slotted spoon and transfer to a heavy casserole.
Gently fry the onions until lightly browned in the oil remaining in the pan. Add the curry powder and fry gently for 2-3 minutes., stirring, then scrape the contents of the pan into the casserole.
Add the bay leaf, allspice, coconut milk and enough stock to barely cover the meat. Season with salt and pepper.
Bring to a simmer, cover and cook over a low heat for about two hours until the lamb is tender.
Just before serving add the lime juice and cook for a few minutes more to blend the flavours. Serve with rice.