1Preheat the oven to 350°F. Place 1/4 cup butter with brown sugar and vinegar in a 9-inch cake pan or cast iron skillet; set in the oven until melted, then stir until smooth and add the cherries. Return to the oven while you mix up the cake batter - the cherries will start to soften and release their juices.
2In a small bowl, whisk together the flour, cornmeal, baking powder and salt. In a large bowl, beat the remaining 1/4 cup butter, oil and sugar for a minute or two, until starting to get pale and fluffy; beat in the eggs and vanilla.
3Add the flour in three additions, alternating with the milk in two additions, beating just until incorporated after each. Spoon batter over the cherries in the pan or skillet, and spread to cover the cherries.
4Bake cake until top is golden and springy to the touch, about 45 minutes. Cool for about 5 minutes, then run spatula around the edges of the cake to loosen.
5 Invert onto a serving plate while it's still warm.