1. Heat a large deep skillet with a heavy bottom and a lid over medium-high heat. Add 1 tablespoon butter and brown beef on all sides.
2. When the beef has browned, add 2 tablespoons butter to the skillet, stir in chopped onion, carrots and garlic. Cook for 2-3 minutes. Stir in flour, then add tomato paste. Cook another 2-3 minutes, stirring frequently.
3. Add wine and stir to combine. Add beef stock (to almost cover the beef), crumbled bacon, parsley, thyme and bay leaf. Cover and bring to a bare simmer. Cook for 2 hours.
4. Meanwhile, melt 1 tablespoon butter in a medium skillet, add mushrooms, and saute until lightly browned on all sides.
5. Prepare the pearl onions. Mix 1 cup water and sugar. Melt 2 tablespoons butter in a medium skillet. Add water with sugar and pearl onions. Bring to a boil, reduce heat, cover and cook for 10 minutes. Remove the lid, increase heat and cook shaking the skillet until water evaporates and pearl onions become golden on all sides. Remove the onions and place on a separate plate.
6. Add pearl onions and mushrooms to the beef stew. Season with salt and pepper to taste. Cook for another 5 minutes.
7. Remove from heat. Serve with potatoes, pasta or crusty bread.