Line an 8x8 square baking pan with parchment paper, leaving an overhang to easily lift the cake out once baked. Preheat the oven to 350°F (180°C).
Make the streusel: Combine flour, brown sugar, cinnamon, and salt in a bowl. Cut in cold butter with a pastry cutter or your fingers until the mixture resembles coarse crumbs. Chill in the fridge while you prepare the batter. 150 g soft brown sugar, 155 g all-purpose flour, 1 1/2 tsp ground cinnamon, Pinch salt, 85 g unsalted butter
In a separate bowl, whisk together the flour, baking powder, baking soda, and salt. Set aside. 190 g all-purpose flour, 1 1/2 tsp baking powder, 1/2 tsp baking soda, 1/4 tsp salt
In a large bowl, cream together butter, oil, granulated sugar, and vanilla with an electric mixer until light and fluffy, around 3 minutes. Add eggs one at a time, mixing well after each addition, followed by the yogurt. 85 g unsalted butter, 1 tbsp oil, 150 g granulated sugar, 1 tsp vanilla paste, 2 large eggs, 120 g Greek yogurt
Fold in the dry ingredients in two additions, alternating with the milk, mixing until just combined. Gently fold in the peaches. The batter will be thick. 60 g milk, 280 g diced peaches
Spread half the batter into the prepared pan. Sprinkle half the chilled streusel evenly over the batter.
Dollop the remaining batter on top of the swirl and gently spread to cover. The batter is thick, so it can pull at the streusel but dolloping all over first before spreading helps.
Sprinkle the remaining chilled streusel evenly over the top.
Bake for 50-60 minutes, or until the cake is golden and a skewer inserted into the center comes out with just a few moist crumbs.
Let the cake cool in the pan for 15 minutes before lifting it out and letting it cool completely on a wire rack.
Make the glaze: Whisk together the powdered sugar and vanilla, then add milk a teaspoon at a time until you have a pourable but not runny consistency. 60 g powdered sugar, 1/2-1 Tbsp milk, 1/4 tsp vanilla paste
Drizzle the glaze over the cooled cake before slicing.