Heat the oven to 375°F. In a small saucepan filled with boiling water, blanch the pearl onions for 1 minute. Drain and let cool. Peel the onions and set aside.
In a medium Dutch oven or ovenproof heavy-based pot, heat the olive oil over medium-high heat. Brown the meat in batches on all sides. Transfer the meat to a platter. Add the diced onion to the pot and cook, stirring occasionally, until softened, about 5 minutes.
Meanwhile, grind the saffron in a mortar and pestle (or rub it between your fingers) and add it to the beef stock. Return the meat to the pot. Stir the saffron mixture into the pot with the lamb, along with any bones. Stir in the honey, turmeric, cinnamon, mace, and prunes. Add the cilantro. Cover the pot tightly with foil and then with a lid. Put the pot in the oven and bake until the lamb is tender, about 50 minutes. Add the pearl onions, cover, and cook for another 5 minutes.
Meanwhile, in a small nonstick frying pan, toast the almonds until golden. Set aside.
Remove the foil and lid. Carefully spoon off any grease. Add the salt and pepper. Return the pot, uncovered, to the oven, and let the sauce reduce slightly, about 5 minutes. Sprinkle the tagine with the toasted almonds. Serve on rimmed plates or in shallow bowls.