For the cake: In a large bowl mix flour, sugar, baking soda, baking powder and salt until well combined. In another bowl, whisk eggs, sour cream, milk and vegetable oil. Pour wet mixture into dry ingredients and mix to combine. Very gently fold in blueberries.
For the cocoa ribbon: Mix cocoa powder, cinnamon and brown sugar in a small bowl.
For the streusel topping: Add cut cold butter, brown sugar and flour to another bowl. Using your fingers or a fork, mix until you have a nice coarse crumbly mixture. Do not over mix.
Layer the cake: Pour half the cake mixture into the bottom of the baking dish sprinkle top with cocoa ribbon, then pour remaining of the cake mixture on top of the cocoa ribbon. Sprinkle top with streusel topping.
Bake in the oven for 40-45 minutes until a toothpick runs through the cake and comes out clean.