Preheat your oven to 350F (175C) and lightly butter a 1 ½ quart baking dish. Set aside.
Begin cooking the elbow macaroni according to package instructions. Once finished, drain, rinse under cold water, and toss with a teaspoon of olive oil. Set aside.
Meanwhile, place chopped bacon in Dutch oven and turn stovetop heat to medium. Cook until bacon is crisped and then carefully remove bacon to a paper towel-lined plate. Set aside. Once cooled, crumble or chop bacon into small pieces.
Drain all but approximately 2 Tablespoons of bacon grease and add 2 Tablespoons of butter to the pot over medium heat.
Once butter has melted, sprinkle flour overtop and whisk until smooth and no lumps remain. Continue to cook, stirring, another 30-60 seconds to toast the flour.
Add spices (salt, black pepper, garlic powder, onion powder, ground mustard, and smoked paprika, if using) and stir well.
While still whisking, slowly pour in the milk. Continue to stir over medium heat until milk and butter are completely combined.
While stirring frequently, bring mixture to a boil. Reduce heat and simmer, stirring constantly, until mixture is thickened. Your whisk or spoon should leave a trail through the sauce and it should coat the back of a spoon.
Remove sauce from heat and add shredded cheeses. Stir until the cheeses are melted and the sauce is smooth.
Add cooked, drained pasta noodles and half of the chopped bacon and stir well.
Pour into prepared baking dish and begin preparing Panko seasoning.
Melt butter in a small saucepan over medium heat. Add panko and cook, stirring frequently until panko is toasted golden brown.
Add remaining bacon and toss with the panko. Sprinkle the mixture evenly over macaroni and transfer to 350F (175C) oven. Bake for 15 minutes then allow to cool for 5-10 minutes before digging in.