Is there a problem if timeout is disabled?
Usually there isn't. But because there can be some unexpected long waits in the callbacks you implemented and some influence from third-party system components (for example antivirus, which have file system filter drivers and they attach above the Callback File System), it's recommended to set the timeout to some "expected and comfortable for users" value. For example 30 sec or 1 min is fine. It helps to avoid deadlocks and very long waits in the system. In addition you can use the ResetTimeout method for "fine tuning". For example if your callback should execute longer then the timeout which is specified in the MountMedia call and you control the situation.
BTW during the development it's usually better to disable the timeouts at all (by setting Timeout parameter of MountMedia() method call to 0). This helps you to single-step code in callback / event handlers as long as you need.