To prepare beef filling, combine onion, ground beef, garlic, oregano, cumin, salt and chili powder in a large skillet; sauté until beef is browned.
Add tomatoes and corn and heat through. Remove from heat and stir in cilantro.
Preheat the oven to 350°F Lightly grease a 13-by-9-inch casserole dish.
To prepare cornmeal batter, combine chicken broth and salt in a large saucepan. Bring to a boil over high heat. Whisk together cornmeal and cold water until smooth. While broth is boiling, add cornmeal mixture all at once, whisking constantly. Stir over medium heat until thick and boiling. Cook 3 to 5 minutes or until the consistency of mashed potatoes. Stir in yogurt and cook 3 to 5 minutes, stirring often.
Spread about two-thirds of the cornmeal batter in casserole. Add beef filling. Top with 1 cup pepper Jack and 1 cup Cheddar cheese. Spoon on remaining cornmeal batter and smooth with a spatula.
To make the toppings, stir yogurt and cream together in a small bowl. Spoon lines of yogurt mixture and diced tomatoes across top. Sprinkle remaining cheeses over top.
Place casserole dish on top of a large baking sheet. Bake 30 minutes; cover with foil and bake 30 minutes longer. Let stand 20 minutes before serving. Serve with sour cream and black olives.