1. Preheat the oven to 160°C.
2. Heat the oil in a large frying pan over medium heat. Add the garlic, onions and salt and pepper. Cook, stirring occasionally, until the vegetables are tender and browned, about 10 minutes. If the mixture becomes too dry, add a tablespoon or two of water.
3. Meanwhile, stir together 1/2 cup of the milk and the cornflour in a small bowl until smooth. Heat the remaining 3 1/2 cups milk in a large saucepan until bubbling. Stir the cornflour mixture into the milk and bring to a boil. Simmer, stirring, until the milk thickens to the consistency of a thin batter, about 5 minutes. Stir in the onion mixture, spinach, parsley and nutmeg, and cook until the spinach wilts. Season with salt and pepper. Remove from the heat.
4. Spread 1 cup of the spinach mixture over the bottom of a 13- by 9- by 2-inch glass or ceramic baking dish. Arrange 3 lasagne sheets over the spinach. Arrange half of the squash over the lasagne sheets, overlapping slightly, and sprinkle with one-third of the mozzarella. Spoon 1 cup spinach mixture over the cheese, and top with 3 sheets, the remaining squash and another third of the mozzarella. Top with 1 cup spinach mixture, followed by the last 3 sheets and the remaining 1 cup spinach mixture. Cover tightly with foil; reserve the remaining mozzarella.
5. Bake for 40 minutes. Uncover and sprinkle the remaining mozzarella over the top. Bake until bubbling and the squash is tender, about 15 minutes. Let stand at least 10 minutes before serving.