Preheat the oven to 350 degrees.
In a sauté pan over medium heat, add the olive oil and onions and cook for one minute. Whisk in the flour and allow to cook for one or two minutes until a golden paste forms.
Reduce heat to medium-low. Slowly, 1/4 cup at a time, gradually whisk in the milk, whisking a bit before each new 1/4 cup of milk has been added. A thick sauce should begin to form.
Whisk in the herbs and 1/3 cup of the parmesan, and then 1/3 cup of the swiss cheese. Once fully incorporated, remove from the heat.
Lightly grease a square or circular baking pan with olive oil or cooking spray. Sprinkle 1/3 cup of parmesan cheese on the bottom of the pan. Begin adding the vegetables so they are slightly overlapping: a slice of tomato, a slice of eggplant, a slice of zucchini and so forth, repeating in a circle or square. Repeat the pattern on the inside and then add any vegetables to fill in the middle.
Spoon half of the sauce over the vegetables, spreading evenly. Repeat the layer of vegetables, and spread the rest of the sauce over this top layer of vegetables. Sprinkle on the remaining swiss cheese and the panko breadcrumbs. Drizzle with olive oil and sprinkle with pepper.
Bake in the oven for 15 to 20 minutes, or until vegetables are cooked through and the cheese is bubbly. Garnish with any remaining thyme and drizzle with olive oil, if desired, to serve.