Preheat oven to 350 degrees. Line a muffin tin with liners (either paper or foil but not silicone), set aside.
In the bowl of a stand mixer (or with a hand mixer) beat together butter, sugar and vanilla until combined, about 1 minute. Add the egg and mix until incorporated.
In a medium size mixing bowl whisk together the flour, baking powder, salt and cinnamon. With mixing speed on low, alternate adding the dry ingredients and the milk (or buttermilk). Mix just until combined.
In a small mixing bowl combine all of the ingredients for the cinnamon swirl. Using a whisk, beat vigorously until a smooth mixture forms. Place into a plastic ziploc bag (cut the corner) or a small squeeze bottle.
Using a standard size cookie scoop, place a scoop of batter in each muffin liner. Shake the pan back and forth to create an even layer. Add a swirl of the cinnamon sugar mixture then add another scoop of batter on top, shake again to create an even layer. Use the remaining cinnamon sugar to create a swirl in the top, taking care to submerge some of it within the batter.
Place in the oven and bake for 18-20 minutes or until a cake tester inserted into the center of the muffin comes out with just a few moist crumbs. Remove from the oven and allow to cool in the pans for 5 minutes before transferring to a wire rack to cool completely.
Meanwhile combine all of the ingredients for the glaze in a small mixing bowl. Drizzle over the tops of the cooled muffins or spread on top with a knife or offset spatula.