Preheat the oven to 350°F (180°C).
Cut Panettone into 1-inch (2-3 cm) chunks.
Grease an oval 9x13 inch (23x33 cm) baking dish (or similar) with butter, add Panettone cubes.
In a large bowl, whisk together (by hand or using a mixer) eggs, milk, heavy cream, sugar, vanilla extract, cinnamon, orange zest, and salt.
Pour the custard into the baking dish. Move the bread cubes to ensure they are coated with the custard (milk-egg mixture) on all sides, press them in slightly. The mixture should cover almost all Panettone cubes but the tips of the cubes should be above the milk mixture (they will crisp up nicely). Make sure the Panettone cubes at the top are faced crumb side-up (light-colored side). The darker side of Panettone cubes would get too dark or even burn.
Bake for about 32 minutes, then sprinkle almond flakes on top, and bake for a further 8 minutes or until set. The pudding should be golden and crispy on top and custard set and not jiggly (you can measure the temperature of the bake to make sure it's baked through, it should be 160°F/71°C in the center of the pudding).
Enjoy!