So the time is given of the group they were in and of the first person across that line in that group.
So if you have Group A and Group B 10 seconds apart at 3KM to go and someone from Group B crashes and slows the rest of the group down, and at the finish they finished 20 seconds behind Group A, everyone in the group would be given the +20 seconds time.
If you have one big Group and someone crashes, similar to Mondays Giro, everyone that was in that group at 3KM to go would be given the same time as the winner.
That make sense?
I actually think the 3KM rule is good as most of the time on sprint stages it means there is a bit more going on, if it was just sprint trains it'd be fairly boring, but the mix of GC on the big stage races makes things that bit more interesting. if you gave times from 3km to go it'd just cause more issues and chaos.