Preheat the oven to 350ºF. Coat a 1 ½ quart baking dish with cooking spray.
In a small saucepan, scald the milk over high heat until bubbles form around the edge. Remove from heat and set aside.
In a medium sauce pan melt 4 Tablespoons butter over medium-low heat. Whisk in the flour until well blended and smooth, about 1 ½ minutes. Remove the pan from the heat and slowly whisk in the milk. Return to the heat and bring to a simmer, whisking to prevent lumps. Continue to cook and whisk until the sauce is smooth and hot and has thickened, 1 to 2 minutes. Season to taste with salt, pepper, and nutmeg.
Add the onion, bay leaf, and paprika to the sauce and simmer gently over low heat for 15 minutes, stirring often.
While the sauce is simmering, bring a large pot of salted water to a boil and cook the macaroni just until tender.
Remove the sauce from the heat and remove the onion and bay leaf. Stir in two-thirds of the cheese. Season with salt and black pepper to taste.
Drain the pasta and return to the pot. Stir in the cheese sauce. Pour half the mixture into the prepared baking dish and sprinkle with half the remaining cheese. Top with the rest of the macaroni and then the remaining cheese.
In a small bowl, melt butter and combine with bread crumbs. Sprinkle over the top of the finished macaroni dish.
Bake until the bread crumbs are lightly browned, about 30 minutes. Let stand for 5 minutes before serving.