Preheat oven to 170°C. Grease a 2 litre-capacity, 26cm (top) gugelhopf (ring) pan.
Finely grate rind of 1 orange and 2 lemons. Using an electric mixer, beat butter, 1 1/4 cups of sugar, rinds and vanilla together until light and creamy. Add eggs, 1 at a time, mixing well after each addition. Add semolina, baking powder and almonds. Mix gently to combine.
Spoon mixture into prepared pan. Bake for 1 hour or until a skewer inserted into the centre comes out clean.
Shred rind from remaining orange and lemon. Juice fruit. Combine juice, remaining sugar and Grand Marnier or orange juice in a saucepan over low heat. Cook, stirring, until syrup comes to the boil. Reduce heat. Simmer for 10 minutes or until reduced by half.
Using a skewer, pierce holes in surface of warm cake. Pour three-quarters of syrup over cake. Add shredded rind to remaining syrup. Stand cake in pan for 15 minutes before turning onto a plate. Spoon over remaining syrup and serve.