What is the usual practice in interacting with ATC at Top-of-Descent?
There are some variances in the way a pilot/crew may handle the initiation of a descent (at or near the TOD point as described in your question).  My answers below reflect my preferences based on normal circumstances. (IFR Jet operations in U.S.)


  when would ATC typically be contacted? That is, would the pilots seek to obtain ATC clearance for descent in advance of reaching TOD so that they could start down at exactly that point? 



If I had not received a descent clearance when approaching (a couple of miles before) the displayed TOD I would request a descent clearance from ATC. This would help avoid being too high and perhaps struggling to meet some published altitude restrictions (e.g. if on a STAR, etc.).





  Would the pilots cross TOD and then call ATC to ask for clearance? 



I would not wait until I'm past the TOD (typically) to ask for a descent clearance - see the answer above.





  Would there be a point when the pilots get early clearance to descend once the TOD point is reached but wait awhile to hit the TOD point?



(I'm not entirely certain I fully understand this question) - Prior to reaching the TOD, ATC may issue a "pilot's discretion" descent clearance (e.g., "descend at pilot's discretion, maintain flight level 210"). Then I could wait until the TOD point (displayed on my nav equipment) to start my descent.  Or I might get a "descend via" clearance on a STAR (Standard Terminal Arrival procedure) which would authorize a descent to comply with the STAR profile, and based on where I was, I could wait to start the descent at my discretion (as long as I comply with the STAR profile).