If you want to communicate only between your application and the "Arduino as a mouse" that is different from making the Arduino act like a mouse.
There are messages that are sent by the mouse driver when the device it is monitoring changes position or a button on it is pressed or released. If you are trying to make the Arduino act as a mouse in a general sense, you need to have an application on the PC read the serial data and generate those messages. That application, which runs all the time, is a device driver.
If you only want the Arduino to act as a mouse for your application, then the process is much simpler. Your application registers a handler to be invoked whenever there is serial data to be processed. That callback would then follow the process in the MSDN article to generate the mouse move/button press events that your application (perhaps indirectly) subscribes to.
The Arduino would need to be programmed to send serial data whenever the "mouse moved".
What about serial mice which do not need drivers?
There is no such thing. Every serial device needs a driver. There are some generic drivers that some operating systems supply that sometimes work well enough.
For a serial device to be understood by a generic driver, it needs to send specifically formatted data to the serial port, at specific speeds, and respond to specific requests.
I don't know where you would find out what specific data at what specific speed to enable a generic Windows mouse driver to understand/drive your "mouse".