Preheat oven to 375 degrees. Toss Brussels sprouts and onions with just enough oil to coat; season with salt and pepper. Spread vegetables in a single layer on a rimmed baking sheet. Fill centre of apple with butter, and add to baking sheet. Roast until tender when pierced with a fork, about 30 minutes for the apple, 40 to 45 minutes for the vegetables.
Meanwhile, cook bacon in a large, heavy skillet or fry pan over medium heat until fat renders and bacon begins to crisp, about 12 minutes. Pour off most fat, leaving behind enough to coat bottom of pan.
When onion and apple are cool enough to handle, cut into pieces about the size of Brussels sprouts. Add onion, apple, and Brussels sprouts to skillet, and cook over medium heat, stirring occasionally, until heated through, about 15 minutes.