I think one of the biggest things that people fail to take in o account, is that not all niches are subject to the same rules. In some niches generic text with keyword replacement will work just fine.
But as I say, it's not about this or that, it's a whole multitude of factors that all add up to tip the balance.
Websites with greater trust, will get away with more than websites with less. This makes determining the causes of Panda even more difficult.
My #1 tip would be to build trust. That's the one thing I'm absolutely certain will help with Panda. Improving content and UM are also important.