Melt butter in a large skillet over medium-high heat. Saute the white and red onions, mushrooms, and garlic until tender. Remove from the pan, and set aside.
Place the sliced beef in the pan, and fry until no longer pink, about 5 minutes. Reduce heat to low, and stir in the cream cheese and Worcestershire sauce, cooking and stirring until the beef is well coated. Season with salt and pepper to taste.
Meanwhile, preheat your oven's broiler.
Place beef mixture onto bottom half of the baguette, then cover the beef with the onion mixture. Place Swiss cheese over the onion mixture. Place open sandwich under a hot broiler until the cheese is melted. Place top of baguette onto the toppings, and serve.