Preheat oven to 375. Grease a 9x9 square pan or a 9 inch round pan. In using a round pan make sure it is at least 2 inches high. If desired, put parchment on the bottom of the pan and grease the top of the parchment as well.
Sift together flour, baking soda, baking powder, and salt. Set aside.
Using a paddle, cream butter and sugar together until light and fluffy.
Add egg and vanilla and buttermilk. Mix until just combined.
Before adding the dry ingredients, remove 2 tablespoons from the bowl and set aside.
Add dry ingredients and mix until just barely blended.
Toss blueberries in the reserved flour. This will prevent them from sinking to the bottom of your cake.
Fold in blueberries and reserved flour by hand.
Mix together streusel topping ingredients with a fork or pastry blender until butter is about the size of peas.
Pour cake batter into prepared pan and top evenly with streusel topping. Bake for 45-50 minutes, or until a toothpick comes out clean.
While cake is cooling, mix powdered sugar, heavy cream, and lemon juice. Once the cake is completely cooled, drizzle across the top.