Combine cabbage, onion, carrots, raisins, apricots, and cheeses in a large bowl. Mix mayonnaise, oil, and curry powder. Add dressing to the salad and mix well. Serve chilled as a side dish to steak or chicken at a barbecue or patio dinner.