Preheat the oven to 190°C. Lightly grease a 1.75 litre shallow ovenproof dish.
Beat the butter in a bowl until creamy, then add the sugar and beat again until the mixture is light and fluffy. Beat in the citrus zest, then the egg yolks, one at a time.
Sift the flour over the mixture and stir it in along with the milk, lemon and orange juice. The mixture will be quite runny and have a slightly curdled appearance, but don't worry, it is meant to look like this.
Whisk the egg whites in a clean bowl into stiff peaks, then gently fold into the citrus mixture, half at a time.
Pour into the prepared dish, then place in a roasting tin and pour in enough warm water to come just over halfway up the sides of the dish. Bake for 35–40 minutes, or until the top is lightly set and golden brown. Remove the dish from the roasting tin, dust with icing sugar and serve hot.