Lightly grease a 20x30cm baking dish. In a medium bowl, whisk together the cheese sauce and milk. Spread 4 tablespoons of the sauce in the bottom of the baking dish. Then layer 1/3 of the potatoes over the sauce in the dish. Sprinkle with 1 tablespoon of Parmesan cheese and salt and pepper to taste.
In a separate medium bowl, combine the ham, broccoli and 3/4 of the Gruyere. Mix well and spread 1/3 of this mixture over the potatoes in the baking dish. Then top with another layer of potatoes, followed by the ham mixture, finally topping all with the remaining Gruyere and Parmesan. Pour the remaining cheese sauce over all.
Cover and bake at 200 C / Gas 6 for 45 minutes, then uncover and bake at 180 C / Gas 4 for an additional 25 minutes or until potatoes are tender. Let stand 10 to 15 minutes before serving.