An application cannot refuse ownership of a call for which it receives an owner handle. Whether the call is delivered to the application with owner or monitor privileges is decided before the call arrives—at the time the application opens the line on which the call is established by the remote caller.
If the application opens the line with lineOpen with the dwPrivilege parameter set to LINECALLPRIVILEGE_MONITOR, it automatically receives a handle with monitoring privileges for all incoming calls on the line. It can then choose to become an owner by calling lineSetCallPrivilege. The fact that it indicated LINECALLPRIVILEGE_MONITOR when it opened the line does not prevent it from later becoming an owner with lineSetCallPrivilege or by originating a call with lineMakeCall (an application is always an owner of calls it places regardless of the privilege specified with lineOpen).
When an incoming call has been offered to an application and the application is an owner of the call, the application can answer the call with lineAnswer. Once the call has been answered, its call state typically transitions to connected, at which time information can be exchanged over the call.
An application can receive handles to incoming calls only for monitoring. You can modify the application (specifically, the parameters for lineOpen) to change the privileges with which it initially opens lines.