Preheat oven to 350 degrees F. Spray a 9X13 baking dish with non-stick cooking spray and set aside.
To make the meat sauce: In a large sauté pan, cook the bacon until crisp and fat is rendered. Remove all fat except 2 tablespoons. To the pan, add the onions, carrots and celery. Sauté until just tender. Add the butter and flour and stir until a paste forms on the vegetables and bacon. Stir in milk, chicken stock and ham. Season with salt and pepper to taste. Cook until thickened. Stir in parsley.
To assemble, place 1/3 the noodles in the baking dish and top with 1/3 of the meat mixture. Sprinkle 1/3 of each cheese over the meat mixture. Continue with two more layers and bake for 30 minutes.