Place the lamb in a bowl and add the ground coriander, ground ginger, saffron and one tablespoon of the olive oil. Mix well and leave to marinate in the fridge, covered, for 24 hours.
The next day, heat the remaining olive oil in a heavy-based pan with a lid. Cook the lamb until browned all over (you may need to do this in batches). Remove the lamb from the pan and set aside.
Fry the shallots in the same pan until lightly golden then add the garlic and return the lamb to the pan.
Stir in the plain flour and add the tomato purée and cinnamon stick.
Stir in the lamb stock and bring to the boil. Cover tightly and simmer gently for 1½ hours, or until the lamb is tender.
Add the parsley, coriander, lemon rind, dates and honey, stir well to combine and serve with a bowl of cous cous.