Are you testing the disconnected internet by disabling the network adapter? If so, don't do that. For TA 3.x that makes the adapter unreadable. For TA 4.0 (out soon) we've fixed that behavior by reading the network adapters if they're disabled (by a variety of methods).
Regarding everything else: don't use "0" for days between checks. That forces your app to recheck with the activation servers every single time an instance of your app starts. That's *wayyyy* overkill. Don't do that. We recommend anywhere from 14 to 90 days. But even 1 day is a better choice.
Also, if your app can contact the server it will. And it will turn the activation into an online activation.