Um, well it depends. If you attached the same DRAM to the FPGA Z80 core, you would get exactly the same behaviour. We could produce a better model of the DRAM by having an access counter per bit, and a pseudo random decay scanner - so yes with enough effort you can do it.
/MikeJ
It might be even simpler, unless aiming for "virtual analog" DRAM modeling

By chance (a bug), I've observed the failed refresh behaviour of a fast page SIMM, and it's amazing how much stuff is still intact after A FULL MINUTE.
So while a small bunch of cells might (or not) fail shortly after the time listed in the datasheet, the number grows much slower than I imagined, no avalanche effect!
All seems to indicate that decay of cells happen with an exponential rate (linked to capacitor discharge curve vs internal noise, I guess).
So probably a couple of LFSRs, a few counters, and some other glue might be sufficient, expecially if the CPU probing for failed refresh is a relatively slow 8-bitter.