Preheat oven to 350°.
Lightly spoon flour into dry measuring cups, and level with a knife. Combine flour, sugar, and salt in a mixing bowl, and cut in the margarine and cream cheese with a pastry blender or 2 knives until mixture resembles coarse meal. Reserve 1/2 cup flour mixture for topping; set aside.
Combine the remaining flour mixture, baking powder, and baking soda, and add the milk, ricotta cheese, vanilla extract, orange rind, and egg. Beat the mixture at medium speed of a mixer until blended (batter will be lumpy), and fold in the chopped apricots. Spoon the batter into an 8-inch round cake pan coated with cooking spray. Dot the batter with apricot preserves, and swirl the preserves into the batter using a knife. Sprinkle the reserved 1/2 cup flour mixture over the batter. Bake 350° for 30 minutes or until cake springs back when touched lightly in center. Cool the cake on a wire rack.