Butter a 1lb pudding basin, then line the base with a circle of greaseproof paper. To prepare the steamer, place an upturned saucer into a large saucepan big enough to fit the pudding basin. This will act as a trivet to stop the base of the pudding coming into direct contact with the heat. Put the kettle on.
In a bowl, beat the butter and sugar until light and creamy. Slowly add the beaten eggs, mixing well between each addition. Add the vanilla and melted chocolate and mix everything well. Sieve the cocoa, flour and baking powder into the mixture, then fold in the ground almonds, milk and chocolate buttons.
Fill the pudding basin with the mixture. Cut out large circles of greaseproof paper and tin foil, big enough to fit over the basin with a 2-in overhang. Lightly butter the greaseproof and lay this on top of the foil, buttered side up. Make a pleat down the centre of the two, then place, paper side down, over the pudding. Turn the foil under to cover the paper. Secure well with string and lower the pudding into the steamer. Add enough boiling water from the kettle to come halfway up the basin but not touch the paper. Cover with a lid and turn the heat down to a gentle simmer.
After 1 hr 15 mins, remove the lid and check the pudding is cooked by inserting a metal skewer. There should be no raw cake mixture on the skewer.
Meanwhile, bubble the orange juice, jam, star anise and dried fruit together until syrupy. Stir in the maraschino and canned cherries.
Carefully turn the pudding out on to a serving plate. Pile some fruit from the sauce on top plus the star anise to decorate, then spoon over some warm syrup. Pour the remaining syrup into a jug and serve alongside.