I don’t want to use the bcs. Can I still mirror objects using this tool?

Of course, you can. Even though the tool works hand in hand with the bcs, it is designed to work with any objects, as long as you specify a symmetrical object. The command to open the UI is DPK_mirrorGeoUI.

I have modeled the right side of my geometry. Can I use this program to create the other?

No. This program will copy/mirror the positions of the points, not the points themselves. The tool is designed to aid in modeling Blend Shape target or BCS dataPoint geometry. For mirroring an object during creational modeling (when you want the other half of the object to be created), there are several tools in Maya you can use, e.g. the Mirror Geometry entry in the Polygons menu (of the Modeling menu set).

I’ve done a Set Initial State with the old DPK_mirrorTool script on my object. Can I use this?

No, the plugin does not work with initial states. It always finds the correspondence of points using a symmetrical object. If you just have the initial state and no symmetrical object, you can use the DPK_mirrorTool script to create one. Just duplicate the object and mirror the duplicate from left to right using the old script. This object can then be used as symmetrical object.

I get the following warning, what does it mean?
// Warning: Specified symmetrical object is not perfectly symmetrical, but all point pairs have been found. The result might not be the desired one. //

This means that the object you have specified as symmetrical object isn’t symmetrical. But it also says that for each left point a corresponding right point has been found. However, it is not guaranteed that the correspondence is accurate in all cases. This warning can also occur on symmetrical objects when your current linear tolerance setting is very low (below 0.00001).

I get the following warning, what does it mean?
// Warning: Specified symmetrical object is not symmetrical and some points will be ignored. Check the result as it is probably not the desired one. //

This means that the specified symmetrical object either doesn’t have the same topology on both sides or that the points aren’t on corresponding positions. At least one of the points couldn’t be mirrored and has been ignored (i.e. wasn’t moved). You should undo and redo several times to see whether these points should have been moved and correct the symmetrical object if possible.

Can I use the mirroring in my own scripts or write a new UI for it?

Sure, you can. The actual work is done by the command DPK_mirrorGeo. The command reference for it can be found in 11.4 DPK_mirrorGeo.