In a large, enameled cast-iron casserole, melt the butter. Add the onion, celery and carrot, cover and cook over moderate heat until slightly softened, about 5 minutes. Uncover and cook until the vegetables are lightly browned, about 3 minutes longer. Stir in the tomato paste. Add the flour and cook for 1 minute, stirring. Add the wine and veal stock and bring to a simmer.
Meanwhile, heat the oil in a large skillet until shimmering. Season the ribs with salt and pepper, add them to the pan and cook over moderately high heat, turning, until they are well browned, about 15 minutes.
Transfer the short ribs to the casserole. Partially cover and cook over moderately low heat until very tender, about 2 hours.
Transfer the ribs to a plate and remove the bones. Strain the sauce into a heatproof measuring cup and skim off the fat. Return the sauce to the casserole and boil until reduced to 2 cups, 10 minutes. Return the meat to the sauce and simmer over low heat until heated through. Serve the ribs with egg noodles.