Preheat your oven to 325°F.
Pat the veal shanks dry with paper towels and season with salt and pepper. Dredge each piece in flour, shaking off the excess.
In a large, heavy pot or Dutch oven, heat the olive oil over medium-high heat. Add the veal shanks and brown on all sides, about 8-10 minutes. Remove the shanks and set aside.
In the same pot, add the onion, carrot, celery, and garlic. Sauté until the vegetables are softened, about 5 minutes.
Pour in the white wine, scraping the bottom of the pot to deglaze. Let it simmer for about 2-3 minutes.
Return the veal shanks to the pot. Add the beef broth, diced tomatoes, thyme, bay leaf, and additional salt and pepper to taste. Bring to a simmer.
Cover the pot and transfer it to the preheated oven. Cook for 2 to 2.5 hours, or until the meat is tender and falling off the bone.
Remove the pot from the oven and discard the bay leaf. Stir in the lemon zest and parsley before serving.