Preheat oven to 425°.
Heat 1/2 teaspoon oil in a 9-inch cast-iron skillet over medium-high heat. Add onion; sauté 5 minutes. Place onion in a bowl. Stir in cranberries; set aside.
Coat bottom and sides of skillet with 1 teaspoon oil. Place in oven for 5 minutes.
Combine cornmeal and next 5 ingredients (cornmeal through salt) in a bowl. Combine onion mixture, buttermilk, margarine, egg, and egg white; stir well with a whisk. Add to cornmeal mixture; stir just until cornmeal mixture is moist. Pour batter into preheated skillet. Bake at 425° for 25 minutes or until a wooden pick inserted in center comes out clean.