Cut the top off each garlic head; discard. Rub cut side of each garlic head with 1 teaspoon oil.
Remove white papery skin from garlic heads (do not peel or separate the cloves). Wrap garlic in foil.
Bake at 425 for 1 hour or until tender; cool 10 minutes. Separate cloves; squeeze to extract garlic pulp. Discard skins.
Combine garlic pulp and 2 tablespoons Madeira in a bowl; mash with a fork.
Bring 1 1/2 cups stock to a boil.
Add porcini; let stand 30 minutes or until soft.
Drain through a colander over a bowl, reserving soaking liquid; chop porcini.
Combine porcini liquid and remaining 3 1/2 cups stock; bring to a simmer in a medium saucepan (do not boil). Keep warm.
Heat a Dutch oven over medium heat.
Add remaining 2 tablespoons oil; swirl to coat.
Add onion to pan; saut 5 minutes or until tender.
Add cremini and shiitake mushrooms; cook 5 minutes or until browned, stirring occasionally. Stir in porcini.
Add rice; saut 1 minute, stirring constantly.
Add remaining 1/2 cup Madeira; cook 1 minute or until liquid is absorbed. Stir in 1 1/2 cups stock; cook 4 minutes or until liquid is nearly absorbed, stirring constantly.
Add remaining stock, 3/4 cup at a time, stirring constantly until each portion of stock is absorbed before adding the next (about 25 minutes total). Reserve 1/3 cup stock from the last addition.
Remove pan from heat; stir in garlic mixture, remaining stock, cheese, salt, pepper, and chopped sage. Spoon into shallow bowls.