Combine the Brussels sprouts and squash in a large bowl. Add the olive oil and garlic powder, season with salt and pepper and toss to coat. Spread the vegetables out on a baking sheet and roast until tender and brown and crispy around the edges, 35 to 40 minutes. Set aside.
Meanwhile, bring a large pot of water to a boil. Cook the pasta according to the package instructions. Drain and set aside.
Melt 4 tablespoons of the butter in a small saucepan. Spread the prepared stuffing out on a baking sheet lined with parchment paper. Drizzle over the melted butter and toss to coat. Roast until crispy, 6 to 8 minutes.
Melt the remaining 4 tablespoons butter in a large pot over medium-low heat. Whisk in the flour and cook for 2 minutes. Slowly whisk in the milk. Raise the heat to medium and cook until thickened and simmering, 3 to 4 minutes. Whisk in the mustard, then whisk in the Cheddar and Gruyere 1 cup at a time, continuing to whisk until all the cheese is melted and well incorporated. If the cheese sauce is too thick, just add a little more milk to thin. Taste and season with salt and pepper.
Stir in the pasta, butternut squash and Brussels sprouts. Transfer to a baking dish or large serving bowl and top with the toasted stuffing. Serve immediately.