Whisk first 4 ingredients in a medium bowl. Using your fingertips, rub in butter until coarse meal forms and some small lumps remain. Stir in buttermilk and knead gently with your hands until dough forms. Wrap dough in plastic and chill for 1 hour.
Lay tomatoes in a single layer on a baking sheet lined with 2 layers of paper towels. Place another 2 layers of paper towels on top of tomatoes. Let stand for 30 minutes to drain.
Preheat oven to 425°. Roll out dough between 2 sheets of plastic wrap to an 11" round. Remove top layer of plastic wrap. Invert dough onto pie dish. Carefully peel off plastic wrap.
Toss both cheeses in a medium bowl until evenly incorporated. Reserve 1/4 cup of cheese mixture. Whisk scallion, mayonnaise, dill, vinegar, sugar, salt, and pepper in a small bowl.
Sprinkle cornmeal evenly over bottom of crust, then top with 1/2 cup cheese mixture. Arrange 1/3 of tomatoes over cheese, overlapping as needed. Spread half of mayonnaise mixture (about 1/3 cup) over. Repeat layering with 1 cup of cheese mixture, 1/2 of remaining tomato slices, and remaining mayonnaise mixture. Sprinkle remaining 1 cup cheese mixture over, then remaining tomato slices. Sprinkle with reserved 1/4 cup cheese mixture. Fold overhanging crust up and over edges of tomato slices.
Bake pie until crust is golden and cheese is golden brown, 35-40 minutes (check crust halfway and tent with foil if it's getting too dark). Let pie cool at least 1 hour and up to 3 hours before slicing and serving.