Preheat the oven to 350°F. Lightly butter five 6-ounce ramekins or three 8-ounce ramekins. Set the ramekins inside of a large cake pan and bring a kettle of water to a boil.
Whisk together the yolks, milk, lemon juice, lemon zest, salt, and vanilla extract. Gradually stir in the melted butter, then mix in the sugar and flour.
Using a handheld electric mixer, beat the egg whites until soft peaks have formed. The tips of the peaks should curl when the beaters are lifted from the egg whites.
Whisk about ¼ of the beaten egg whites into the other egg mixture, then gently fold in the rest with a spatula. Fold by scraping round the edges of the bowl, then cutting through the center. Keep folding until there are no clumps of egg white, and the batter looks foamy.
Gently divide the batter among the ramekins, making sure each one has an equal part of liquid and foam. Pour boiling water from the kettle into the cake pan until the water level reaches halfway up the sides of the ramekins. Be careful not to splatter water into the ramekins. This hot water bath is called a bain marie.
Slowly and carefully move the pan of water into the middle of the oven. Bake at 350°F for about 20-25 minutes, or until the cakes are risen and browned on top. (If you're using 8-ounce ramekins, the cakes will take about 35-45 minutes.)
Carefully remove the hot ramekins from the water and let them cool on a wire rack for about 20 minutes.
Dust the tops of the cakes with icing sugar using a small sieve. Serve the cakes warm.