Melt the butter in heavy soup pot. Add the diced celery, leeks and carrots; cook, stirring, over low heat for 3 minutes. Add flour and cook, stirring, over low heat an additional 2 minutes. Add the broth and beer. Bring to a simmer very slowly so vegetables become tender, about 15-20 minutes, stirring occasionally. Over low heat, gradually add the cheeses, whisking all the time, until smooth. Season with cayenne, black pepper and salt. Continue cooking over low heat until heated through. Do not boil, or soup will separate.