Pre-heat the oven to 180C/Gas 4 and grease a deep roasting tin.
In a heavy-based saucepan, heat the cream, milk, vanilla extract and butter on a medium heat and simmer until butter has melted. Leave to cool slightly
In another bowl, whisk the eggs and sugar together, then slowly add the warm custard mixture, whisking to mix thoroughly.
Set aside and carefully slice the sides and base of the panettone into approx. 1cm thick slices to line the tin and form a base for the pudding.
Pour around 1/3 of the custard over the base layer.
Break the remaining panettone into pieces and soak in the custard mixture. Layer half of the mixture into the tin then randomly place half of the chocolate squares and fill some of the gaps with teaspoons of peanut butter (using about half). Then repeat with the remaining panettone mixture and top once again with the chocolate and peanut butter.
Finish with a sprinkle of the orange zest and a grating of fresh nutmeg, to taste, then transfer to the oven and cook for 30 minutes, or until firm and golden.
Serve while warm with ice cream or a sprinkle of cinnamon sugar.