Heat oven to 400°F and adjust the oven rack to middle position. Line a rimmed baking sheet with foil, and spray the foil with nonstick cooking spray. Spray an 8x11x2-inch baking dish with nonstick cooking spray; set aside.
Place the cauliflower florets on the prepared rimmed baking sheet and drizzle with 2 tablespoons olive oil; mix to coat. Cook the cauliflower at 400°F until lightly browned and tender or 15-20 minutes, turning after 10 minutes. When tender, remove from the oven and set aside.
While the cauliflower cooks, melt 2 tablespoons butter in medium-sized saucepan over low heat. Sprinkle the butter with flour and stir continuously for 2 minutes.
Pour hot milk over the butter-flour mixture, whisking continuously, until the mixture boils and thickens (1-2 minutes).
Remove the mixture from the heat, and add (while whisking constantly) ½ teaspoon kosher salt, black pepper, nutmeg, ½ cup grated Gruyere and Parmesan. Whisk until smooth.
Pour 1/3 sauce over the bottom of the prepared baking dish and layer the roasted cauliflower, evenly, over the sauce. Spread the remaining cheese sauce evenly over the cauliflower.
Set the tomato vines (or tomatoes) over the cauliflower/cheese mixture, and evenly sprinkle the breadcrumb mixture over the top. Drizzle the remaining 2 tablespoons melted butter over the top.
Bake at 400°F, 25-30, minutes or until bubbly and golden brown on top.
Serve immediately or at room temperature.