I've used a few midifiles that were strictly quantized. I've used Cal files " random time" and "vary velocity" to loosen them up and they can be teased into a pretty decent performance. Also use the tempo map in a subtle way. The final piece of the puzzle is to use decent multy samples and get the variation in velocity to pick different samples. I've had some pretty good results. Also if there are a variety of midi files for a particular song - make sure you check each one out as the initial performances can be anything from ring tone quality to full out real time performances.