Preheat oven to 350º. Lightly grease a muffin tin with cooking spray or vegetable oil, or line with paper muffin liners.
Prepare streusel topping: combine sugar and flour in a small bowl. Mix in oil with a fork until well combined and sandy; set aside.
In a medium bowl, whisk together flour, baking powder, and salt. Set aside.
In a large mixing bowl, beat butter and sugar until light and fluffy. Add eggs, vanilla and milk and mix until well combine. Add flour mixture and stir just until blended.
Stir in blueberries and cranberries.
Divide batter evenly into 12 muffin cups.Sprinkle muffins with streusel topping. Sprinkle streusel topping with red, white and blue sanding sugar.
Bake for for 20 to 25 min, until a tester inserted into the center comes out clean. Remove from oven and cool for a few minutes in the pans.
Remove muffins from pans and cool on a wire rack.