Preheat oven to 375ºF. Cook potatoes in a large pot of boiling, salted water until tender; mash with butter, milk and parmesan; season to taste with salt and pepper.
White the potatoes are boiling, heat olive oil to shimmering hot in a dutch oven over medium-high heat. Add lamb and break up with a spoon. Season with salt and pepper, and cook, stirring only once or twice, until browned (it doesn't have to be cooked through). Use a slotted spoon to transfer lamb to a plate.
Add onion to dutch oven (along with another splash of oil if needed) and cook until soft, about 10 minutes. Add garlic, zucchini and eggplant and cook until the zucchini is crisp-tender, about 5 minutes. Stir in tomato paste; cook 2 minutes, stirring occasionally.
Return lamb to dutch oven along with any juices that accumulated on the plate. Stir in cinnamon, 2 tsp coarse salt and 1/2 tsp black pepper. Add red wine and bring to a rapid simmer. Stir in lemon juice and parsley. Taste and adjust seasoning.
Remove dutch oven from heat and top meat mixture with the mashed potatoes. Transfer to the oven and bake until topping is browned and filling is bubbling up around the edges, about 30 minutes.