Preheat the oven to 300˚F.
Cook the bacon in a Dutch oven set over medium-high heat until crisp; transfer to a bowl.
Brown the beef in the pot, sprinkling with salt and pepper, then add the onion and garlic and cook for 2-3 minutes. Sprinkle with flour and stir to coat.
Add the stock, wine, tomato paste and thyme, cover and braise for 3-4 hours, until the meat is very tender.
Add the carrots and return to the oven for 15 minutes, until tender.
In another skillet, heat the butter and sauté the onions and mushrooms for 5-8 minutes, or until tender and golden; stir them into the stew along with the bacon just before serving.