You can't exceed the 3 hrs unless it's an emergency and the safety of the aircraft and occupants may be compromised. So if you're over 3 hrs it's because it's an emergency so you tell atc it's an emergency and you don't have any delays. So if you weren't telling atc you had an emergency you shouldn't have been still flying. It's that simple. The fact that you had delays and went over 3 hrs without an emergency is an eye opener.
Another reason I'd rather not merge with KA.