Hi,
I've done these and Proteus does this amazingly accurately. It's either you set up something wrong, or it's because of insufficient hardware, esp processor or RAM. RAM may not be much of a problem provided you have enough, but processor is, since Proteus is a single-threaded app (it's biggest disadvantage), even if you have a quad-core CPU, unless it's smart enough to do something like TurboCore in AMD or TurboBoost in Intel, you're just going to use that one thread, rendering the other 3 useless and putting a whole lot of load on the single thread. But if you have something like a Celeron or even a P4, your simulations will be way off track for medium-to-complex circuits, as a huge CPU load is put.
So far, I find Proteus is the best simulation software in microcontrollers, or for the matter, in analogue and digital as well.
Hope this helps.
Tahmid.
---------- Post added at 18:22 ---------- Previous post was at 18:19 ----------
The other thing is it follows your timestep, eg. if you have a source of 25kHz frequency, it's gonna try to reduce the timestep to such a value so that 25kHz can be easily simulated and understood by the user. Maybe you refresh your 7-segments at such a rate, that you can see the LEDs changing position. Just increase the frequency in this case to around 1kHz refresh rate and you'll see it smooth. But in real life 100Hz will be smooth as your eyes won't react to such vibrations, but Proteus will slow itself down intentionally to let you see this.
Hope this helps.
Tahmid.