Preheat oven to 325. Spray a souffle dish or straight sided casserole ( about 2 qts) with cooking spray.
Make a bechamel sauce - melt the butter over low heat in a saucepan then add in flour. Stir for 30 seconds then whisk in the milk. Cook over medium heat until the sauce has thickened and comes to a boil. Reduce heat and simmer for a couple of minutes and then stir in the cheddar and parmesan cheese, salt and cayenne pepper. Stir until cheese has melted then remove from heat.
In a bowl beat egg yolks lightly. Gradually whisk in 1/2 cup of cheese sauce. Gradually whisk egg yolk mix back into the saucepan. Mix in tomato and basil, transfer to bowl and set aside.
In a large bowl, beat egg whites until stiff peaks form. Using a rubber spatula, fold in a third of the egg whites into cheese mix. Fold in the rest of the egg whites.
Pour mixture into the prepared souffle dish. Run your thumb around the inside edge of the dish to create an indent. (This will give you the top-hat look) Bake until souffle is puffy and golden, about 55 minutes. Do not open the door until it is done!