Preheat oven to 350 degrees. Spray muffin tin with baking spray. Set aside.
In a large mixing bowl, beat butter, eggs, vanilla extract, almond extract and sugar until well blended. Add in flour, baking powder, baking soda, and salt. While beating this in, slowly add buttermilk. Once added, beat for 2-3 minutes, until batter is fluffy. Fold in cranberries and diced apples.
Spoon muffin batter into muffin tins, about ⅔ full.
In a small bowl, combined streusel ingredients with hands. The mixture should become a crumbly topping. Sprinkle generously over muffins, using a knife to slightly tap or swirl some of the mixture into the muffin batter.
Bake muffins for 20-22 minutes, until toothpick in center comes out clean. Remove from oven and cool in pans 5 minutes.
Remove from pans and cool on wire rack. Store in airtight container (or cake saver) for several days. Or freeze in ziploc until ready to enjoy.