Make the meatballsI: In a large bowl combine the beef, lamb, grated onion, ginger, cilantro, and spices. Using your hands mix very well. (To taste for seasonings and to see if the meatball will hold together, make a small one and place in the microwave until cooked, about 45 seconds, then taste and see if you need to mix more). Make about 2 inch round meatballs. Set aside.
Heat oven to 350º F.In a saute pan, add the oil and butter, when hot, add the onions. Sauté until they are slightly browned; add the garlic and chili. Sauté a few minutes more. Add the cinnamon stick and additional spices; sauté 1 minute then add the raisins, carrots, cauliflower, beef broth, tomatoes, cilantro, and mint. Bring to a simmer. Turn off heat and set aside.
If using a tagine, layer the meatballs on the bottom then pour the vegetable mixture over; cover with the cone and place in the oven. If not using a tagine, you can use any heavy pot with a tight-fitting lid. You may have to add a bit more liquid.
Place in the oven for 40 to 45 minutes; open and put the spinach on top along with the sliced lemon; close and cook 5 minutes more
Remove from oven, stir gently and add the pine nuts. Serve over couscous or basmati rice.