Preheat the oven to 400 degrees. With a pastry brush coat the bottom and sides of an 8 1/2 or 9 inch square shallow baking dish with 1 tablespoon of the soft butter, then scatter 1 tablespoon of grated parmesan over the bottom of the dish. Tip the dish from side to side to spread the cheese evenly on the buttered surfaces and set the dish aside. Place the corn in a food processor and puree at high speed. In a large bowl, combine the pureed corn, cornmeal, milk, 1/4 cup olive oil, grated cheese, salt and cayenne pepper, and mix thoroughly. In a heavy 8 to 10 inch skillet, heat the remaining tablespoon of oil over moderate heat. Add the onions and cook, stirring frequently, for 4 or 5 minutes, or until they are soft and transparent but not brown. Scrape the onions into the corn and cornmeal mixture. Beat the egg whites until they are firm enough to form unwavering peaks on the beater when it is lifted out of the bowl. Beat the egg yolks in a separate bowl until they are thick and lemon colored, then fold them into the egg whites. Gently but thoroughly fold the combined eggs into the corn mixture, then pour it into the prepared baking dish. Dot the top with the remaining 1 tablespoon of soft butter. Bake in the middle of the oven for 45 minutes.