Pre-heat the oven to 170C and line a 2lb loaf tin.
Weigh out your dry ingredients and spices into a large mixing bowl.
Place the water, golden syrup, sugar and butter into a saucepan and place on a low-medium heat. Warm the mixture gently until the sugar and butter have dissolved and formed a sticky syrup.
Stir the syrup into the dry ingredients and beat well until smooth.
Allow the mix to cool slightly if it hasn't already done so and begin to beat in the egg and milk.
Finally pour the cake mix into the lined loaf tin.
Place low in your oven (so that the top of the loaf tin is in the centre of the oven) and bake for 1hr 15mins - 1hr 30mins or until the cake is risen and springy to the touch.
Allow the cake to cool in the tin for 5 minutes before removing.
Store the cake in its liner until you are ready to decorate (best done on the day of serving).
To make the icing, beat the butter with an electric mixer until light, smooth and fluffy. Add the cream cheese and vanilla and beat until well incorporated.
Still beating, add the icing sugar a little at a time along with the cinnamon.
Beat well until the icing is smooth and light.
To make the compote, add the cranberries, jam sugar, red wine, spices and orange zest.
Heat on a low heat until the mixture begins to bubble.
Turn it up high, stirring frequently until the compote thickens (5 mins) then take off the heat immediately and allow to cool.
Spoon the compote over the cake and serve.