Position a rack in the lower third of the oven and heat the oven to 375°F. Butter a 9-inch square baking pan.
In a medium bowl, combine the flour, sugar, cinnamon, and salt. Add the cold butter and cut it in with a pastry blender or two table knives until the butter pieces resemble small peas. Refrigerate until needed.
Sift the flour, baking powder, and salt into a bowl and set aside. With an electric stand mixer (a hand mixer is fine, too), beat the butter with the paddle attachment on medium speed until smooth, about 1 minute. Add 1/4 cup of the sugar and the vanilla and almond extracts. Beat 1 minute on medium speed. Gradually add the remaining 3/4 cup sugar while beating on medium speed. Turn off the mixer and use a rubber spatula to scrape the bowl and beater. Beat on medium-high speed until pale and slightly fluffy (the sugar will not be dissolved), about 3 minutes. Reduce the speed to medium and add the eggs, one at a time, mixing until the batter is smooth each time. Stop and scrape the bottom and sides of the bowl and the beater. On low speed, add the flour mixture and beat only until incorporated. Remove the bowl from the mixer and scrape the beater. The batter will be thick.
Add half of the apricots and half of the raspberries to the batter and fold them in gently with a large rubber spatula. Some of the raspberries will break, giving the batter an attractive pinkish cast. (When baked, the pink will disappear.) Spread the batter into the prepared pan and distribute the remaining fruit evenly on top.
Sprinkle the streusel over the fruit. Bake until the cake springs back in the center when lightly pressed and a toothpick comes out clean, 45 to 50 minutes. Let the cake cool in its pan on a rack. Serve warm or at room temperature.