Preheat the oven to 350 degrees (170C); line two 9 inch cake pans with waxed paper and butter and flour them.
In a bowl, sift together the flour, salt and set aside.
Place six of the eggs in a large heatproof bowl set over hot water; with an electric mixer, beat until frothy; gradually beat in 3/4 cup of the sugar until the mixture doubles in volume and is thick enough to leave a trail like a ribbon when the beater is lifted; takes about 10 minutes; remove the bowl from the hot water; Fold in the orange rind, half the grated lemon rind and 1 tablespoon of the lemon juice until blended; fold in the coconut; sift in the flour mixture in 3 batches, folding in thoroughly after each addition; divide the mixture between the prepared pans.
Bake until the cakes pull away from the sides of the pan, 35-40 minutes; let cool 5 minutes, then unmold and transfer to a cooling rack.
In a bowl, blend the cornstarch with a little cold milk to dissolve; whisk in the remaining eggs until just blended; set aside.
In a saucepan, combine the remaining lemon rind and juice, the remaining sugar, butter and 1 cup water; over medium heat, bring the mixture to a boil; whisk in the eggs and cornstarch, and return to a boil; whisk constantly until thick, about 5 minutes; remove from the heat; place a piece of plastic wrap directly on the surface to prevent a skin from forming.
For the frosting, cream the butter and icing sugar until smooth; stir in the lemon rind and enough lemon juice to obtain a thick spreadable consistency; sandwich the cake layers with the lemon custard mixture (just make sure you don't spread it right to the edge of the layers or it will start to drip out); press down gently to bring custard to edge safely; spread the frosting over the top and sides; cover the cake with the coconut pressing in gently.