Heat olive oil in a Dutch over over medium-high heat.
Season lamb shoulder with salt and pepper; cook in hot oil until well-browned on all sides, 20 to 30 minutes. Remove shoulder to a platter.
Preheat oven to 350 degrees F (175 degrees C).
Stir onion, celery, carrot, fennel, and garlic into the rendered fat remaining in the Dutch oven; season with salt. Cook and stir the vegetables in the hot fat, scraping the bottom of the pot to release any dark bits of meat stuck, until the vegetables are softened, about 10 minutes.
Return lamb shoulder to the Dutch oven along with any juices accumulated on the platter; add tomatoes and white wine. Bundle marjoram, thyme, and rosemary together with kitchen twine; add to the Dutch oven and submerge in liquid. Place a cover on the Dutch oven, bring the liquid in it to a boil, and transfer pot to the oven.
Bake in preheated oven for 1 hour. Pour 1 cup water into the Dutch oven and continue cooking for 1 hour more.
Remove lamb to a cutting board, cut into small pieces, and return to the Dutch oven. Pour remaining 1 cup water over the lamb and stir.
Cook until lamb is tender, about 30 minutes more.
Stir rosemary, orange zest, and red pepper flakes into the lamb mixture. Add more water if the mixture is too thick.