1. Bring large pot lightly salted water to boiling.
2. While water is coming to boil, saute bacon in large skillet until crispy, about 7 minutes. Remove to paper toweling to drain.
3. Drain all but 3 tablespoons drippings from skillet. Add onion; increase heat to medium-high; cook until softened, 8 to 10 minutes. Reduce heat to medium. Sprinkle with flour; whisk, scraping up any browned bits. Whisk in milk, 1/2 cup at a time, until smooth. Cook, stirring, until thickened, 2 minutes.
4. While onion is cooking, add penne to boiling water; cook according to package directions. Add broccoli for last 4 minutes. Drain penne and broccoli; transfer to serving bowl; keep warm.
5. To thickened milk in skillet, add salt, pepper, cream cheese and blue cheese; whisk until smooth. Remove from heat. Stir in cayenne and 2 tablespoons Parmesan. Crumble bacon; add to sauce. Toss with penne and broccoli. Top with remaining Parmesan.