Great answers so far! One thing you need to be VERY careful of is the potentially high output of the piezo! Under normal circumstances, a piezo element will output a decently normal level when connected to a mic pre. However, if you drop it, flick it, or hit it hard in some other way, many piezos are often capable of outputting over 30v! That can blow up a pre if you're not careful!
I've had a lot of luck improving the overall frequency response of my contact mics by terminating them 1/4" and plugging them into an inline impedance matcher, then straight into a 744T. Might also be interesting in playing with plugging one into a DI box. However, I'd be VERY interested in hearing the results of connecting one into a variable impedance mic pre (I used to own one of the ART preamps that had this function, but I since upgraded to my Chandler Germanium...)
Another possibility (which I've thought about doing but never done): if you have Logic Studio, there is an EQ plugin called "Match EQ". Quite possibly, if you could find a surface that resonates at a fairly flat frequency (maybe an NS-10?), you could shoot pink noise through it, record it's response, and then match that to a direct measurement of the pink noise with the EQ (internally in the software). This would account for the abnormal frequency response. You could then save your new EQ setting and apply it in post to every recording on the mic, which would essentially "decode" your mic. Of course, all this is assuming you can find a surface with a fairly flat response.
I have other ideas up my sleeve about how to accomplish this with Match EQ if anyone is interested... let me know.
Hope this helps!!!