Clean the lamb shoulder of membranes and fat, if any. Make 10-12 incisions with a knife and spike the meat with garlic cloves. Mix the olive oil, lemon juice, honey and rosemary together and brush the lamb thoroughly with this sauce. Leave it in a covered container to sit for awhile to get seasoned.
Transfer it into a greased tray and put it to bake in a moderately warm oven, at about 392°F (200 °C). Then move the roasted lamb to a large plate and wrap it in foil to smother for 15 minutes. Meanwhile, prepare the wine sauce by frying the chopped onion in a little oil until soft. Pour in the wine, bring to a boil until it begins to evaporate and pour in the broth.
Boil until the sauce is reduced to 1 cup. Dilute the corn flour with a little water and thicken the sauce with it. Add tomato paste and spices to taste. Stir and serve a portion of lamb, covered with wine sauce.