I like your script grasshopper - you have learned well at the masters feet!
There is a product that uses an enhanced version of this that's pretty slick that I use at work. It can be used to view the most costly queries based on cpu, duration, i/o. etc. It basically uses this logic to pull from sysprocesses and record to another DB.
It can be found at http://www.highwiredev.com