Photograph: Maja Smend
For the pudding, put the eggs, rum, orange juice, wine and treacle in a bowl; whisk together.
Put all the other pudding ingredients in a large bowl and stir well. Add the egg mixture and stir again. Cover with clingfilm and chill overnight.
The next day, spoon the mixture into a buttered 1.5 litre pudding basin.
Cut out a square of nonstick baking paper big enough to cover the top of the basin and butter one side. Cut out a square of kitchen foil the same size and put it on top of the non-buttered side of the baking paper. Make a pleat in the middle of both sheets so the pudding can expand as it steams. Place them over the top of the mixture in the basin (baking paper first, buttered-side down). Tie string around the rim of the basin to secure the paper and foil, and make a string 'handle' so you can lift the pudding out. Trim any excess paper and foil.
Steam the pudding for 4 hours. Cool; wrap it in fresh baking paper and foil. Store in a cool place (not the fridge).
Steam the pudding for a further 2 hours on Christmas Day before turning out on to a serving plate.
For the brandy butter, put the soft butter into a bowl and whisk with the icing sugar; add the brandy a little at a time. Chill until firm.
Dust the Christmas pudding with icing sugar, garnish with redcurrants and rosemary and serve with the sauce.