Preheat the oven to 160°C.
1. Place the lamb in a roasting pan and season with salt and pepper. Use your hands to rub the garlic over the meat then rub with the rosemary and brown sugar.
2. Pour the wine or lamb stock into the roasting pan, squeeze the lemon juice over the meat and sprinkle with the zest. Cover the roasting pan with a lid, or tightly with foil, and roast for 3 hours, basting the meat occasionally. Remove the lid or foil from the meat and roast for another 45 minutes or until the meat is golden brown and very tender. Add the onions to the roasting pan for the last 30 minutes of the cooking time and baste the meat and the onions at least twice. If needed, drizzle a bit of olive oil on the onions during roasting.