For the béchamel sauce, melt the butter in a small saucepan over low heat. Stir in the flour using a wooden spoon, then cook gently for 1 minute, still stirring. Remove the pan from the heat and gradually whisk in the milk until smooth.
Return the pan to the heat and continue to cook, stirring constantly with the wooden spoon, until the sauce thickens. Season with salt and pepper, then remove from the heat and leave until cold.
Pre-heat the oven to 200 C
Place the puff pastry on your work surface and cut an 8 pointed star in the centre of the pastry, leaving a 6 cm gap between the edge of the pastry and the tips of the star. Spread most of the béchamel around the star, in a circle, making sure to leave a slight border around the outer edge. Sprinkle a handful of each cheese over the béchamel then lay the ham on top of the béchamel and then sprinkle with another handful of the cheeses. Season with black pepper.
To make the crown, fold the pointed inner pieces of pastry up and over the fillings, sealing on the outside of the circle by folding the outer edge in to meet the point.
Seal the pastry seals with egg wash.
Spread béchamel over the exposed pastry and sprinkle with the remaining cheeses.
Bake in the oven for 20 - 30 minutes until the pastry is cooked through and the cheese is bubbling and Golden.