Preheat oven to 350 degrees. Grease a 9-x-13-x-2-inch baking dish
Place the bread cubes on a large baking sheet and toast in the oven for 30 minutes, turning once after 15 minutes, until lightly brown. Set aside to cool. Raise the oven temperature to 450 degrees.
In a medium skillet saute the onion in the butter until translucent and softened but not browned, about 5 minutes. In a very large bowl, crumble the cornbread, toasted bread cubes and cracker crumbs. Add the onion and eggs and toss with a fork until mixed. Add 3 cups of the broth and mix it well, adding more as needed to make a very moist, but not soupy, dressing. Season with salt and pepper to taste. Bake in the prepared pan for 15 minutes, or until slightly browned.
For the cornbread dressing: preheat oven to 450 degrees.
Pour 2 tbsp of the oil into a well-seasoned cast-iron skillet and place over medium-high heat. Put the cornmeal in a large mixing bowl. Make a well in the cornmeal and add remaining 2 tbsp. oil. With a fork, stir in enough of the buttermilk to make a batter that is thick but can be easily poured into the hot skillet. You may not need all 3 cups.
Carefully pour the batter into the skillet. The oil will come up around the edges. Use the back of a spoon to smooth this over the top of batter. Continue to heat on the stove top for 1 minute and then transfer the skillet to the oven and bake for 20 minutes, or until browned on top. Immediately turn the cornbread out onto a cooling rack to keep the crust crisp.