In a small pan, sauté the ham and brown for 3 minutes. Set aside.
Heat a large pot of salted water to a boil. Drop in pasta and cook for 9 minutes, then drain water.
In a large pot over medium heat, add butter to melt and whisk in flour. Cook for 1 minute, then whisk in the stock, then the milk. Allow the sauce to thicken and add cheeses, salt, pepper, paprika, and buffalo sauce.
Remove the sauce from heat and add the ham and drained pasta. Mix thoroughly. Serve immediately.