Preheat the oven to 350°F (175°C) and line a muffin tin with cupcake liners.
In a medium bowl, whisk together the flour, baking powder, baking soda, and salt.
In a large bowl, beat the softened butter and granulated sugar until light and fluffy.
Add the eggs one at a time, beating well after each addition, then stir in the vanilla extract.
Alternately add the flour mixture and buttermilk to the butter mixture, starting and ending with the flour. Mix until just combined.
Fill the cupcake liners halfway with batter, add a spoonful of peach preserves in the center, and cover with more batter until each liner is three-quarters full.
Bake for 18-20 minutes or until a toothpick inserted in the center comes out clean. Let the cupcakes cool completely.
For the frosting, beat the softened cream cheese, powdered sugar, and milk until smooth and creamy.
Frost the cooled cupcakes, top with diced fresh peaches, drizzle with honey, and sprinkle with sugar crystals.