Bring a large pot of water to a rolling boil.
Heat oven to 375F. Arrange bacon on a slotted broiler pan and bake until crisp, 15-18 minutes. Remove and chop; reserve.
Heat oil in a skillet over medium heat; add leeks and garlic, and saut 5 minutes. Deglaze with wine or stock; allow liquid to almost evaporate and reserve over low heat.
In a sauce pot over medium heat, melt butter and whisk in flour. Cook 1 minute, add warm milk and simmer at a gentle bubble to thicken. Season with salt, pepper and nutmeg.
Season boiling water with salt and cook pasta to al dente.
Stir Swiss or Gruyre and cheddar into white sauce; remove from heat and stir in Dijon.
Combine pasta with bacon, leeks and cheese sauce. Place in a baking dish or casserole and top with Parm. Brown under broiler or cool and bake off from room temperature at 375F until brown and bubbly.