Heat olive oil in a large skillet over medium-high heat.
Add the onion, and sauté for about 3 minutes, until translucent.
Add the Swiss chard, and sauté until wilted and the stems are slightly browned. Season with salt and pepper and remove from the heat.
Generously butter a 9x13 casserole dish.
Layer one-third of the bread cubes over the bottom of the dish. It won't fully cover the bottom, but this is ok.
Layer one-third of the sautéd chard over top of the bread, followed by one-third of the gruyere, and one-third of the Parmesan.
Repeat these layers two more times.
Whisk eggs together with Dijon mustard, then whisk in the milk, salt, and pepper.
Pour the custard over top of the strata layers. Cover with plastic wrap, and set in the fridge overnight or for at least four hours, but up to one day.
When you're ready to bake, preheat the oven to 350°F /180°C.
Bake the strata for 45-55 minutes, until it is puffed and golden on top, and no longer so jiggly in the middle (a little jiggle is ok as it will continue to cook as it cools).
Remove from the oven and let stand for 10 minutes before serving.