Preheat oven to 350 degrees. Butter a 13 x 9-inch baking dish; set aside.
In a large pot of water, cook the macaroni according to package directions; drain. Return the macaroni to the pot. Add cheeses to the hot macaroni and stir well; spread in the prepared dish.
In a mdeium bowl, whisk together the 1/4 cup butter, the half-and-half, eggs,sour cream, salt, cayenne pepper (if using), and black pepper. Pour over the macaroni. Bake uncovered, 40 to 45 minutes or until golden brown and bubbling. Let stand for 10 minutes before serving.