Preheat oven to 400°F / 200°C. Line a muffin tin with papers, or butter and flour the pan, or coat with nonstick baking spray. Whichever method you prefer.
In a small bowl, combine all the ingredients for the streusel except the melted butter. Pour in the butter and mix with a fork until you have coarse crumbs. Set aside.
In a medium bowl, combine flour, baking powder and salt. Whisk to combine and set aside.
Combine milk, eggs, sugars, vanilla and butter in separate bowl and whisk to incorporate.
Pour wet ingredients over dry ingredients. Gently stir with a spatula until not quite fully mixed.
Add cherries by folding in with a spatula, making sure to scrape the bottom of the bowl. Again, do not overmix. This will make your muffins tough.
Fill muffin tins 2/3 full. Sprinkle each muffin with streusel topping.
Bake for 18 - 20 minutes, or until a tester comes out with only a few moist crumbs on it.
Let muffins cool in tin for 10 minutes before removing to a cooling rack to cool completely.
Once muffins have cooled completely, combine powdered sugar and milk or half & half in a small bowl and drizzle with a spoon over the tops.