Boil elbow macaroni for about 5 minutes, or until al dente. Drain and return to pot.
Stir in cheddar, pepper, and onion.
In a small bowl or measuring cup stir together eggs, cayenne, evaporated milk, and salt. Pour over macaroni and stir to combine.
Pour into a greased lasagna pan, spreading evenly with spatula. Dot with butter. NOTE: At this point I refrigerated the macaroni until shortly before I needed it.
Bake at 350F for 30-45 minutes.
Let cool about 10 minutes and slice into squares. Serve hot.