To make the white sauce, put the milk in a saucepan with the bay leaves and quartered leek. Bring to the boil, then remove from the heat and leave to infuse for 1 hr.
Strain the milk into a large jug, discarding the leek and bay. Melt 60g butter in the pan, then stir in the flour with a wooden spoon and cook for 2 mins. Stir in the strained milk, a splash at a time – the mix will thicken at first to a doughy paste, but keep adding the milk gradually to avoid getting lumps. When all the milk is incorporated, bring to a gentle simmer, stirring constantly. Bubble for a few minutes until thickened. Season with the nutmeg, mace and some salt and pepper, then remove from the heat and stir in the mozzarella until melted.
Melt the 1 tbsp butter with the walnut oil in a frying pan over a low heat, then cook the sliced leeks until really soft. Stir in the sage and fry for a further 2 mins. Cook the cabbage in a pan of boiling salted water for 3 mins, then quickly lift out of the pan and into a colander. Cook the kale for 30 seconds in the same pan. Drain, and toss with the cabbage and leeks.
Butter a deep 2.5-litre baking dish. Spread a quarter of the white sauce into the base of the dish and scatter with a third of the greens, a quarter of the walnuts and 1 tbsp cheese. Top with a layer of lasagne sheets. Repeat twice more to make three layers, then spread the last of the sauce over the final pasta layer. Scatter with the rest of the hard cheese and chill for at least 30 mins, or up to 24 hrs.
Heat the oven to 180C/160C fan/gas 4. Bake the lasagne for about 50 mins until golden and bubbling, then scatter over a few more sage leaves and the remaining walnuts. If the lasagne is already golden and crisp, cover tightly. Return to the oven for 10 mins, then leave to rest for 10 mins before serving.