Why would anyone want a software hands-free on Linux?

See the OpenICE project and nGhost.

Whether or not anyone would want a software hands-free that runs on Linux, it is undoubtedly easier to implement one on Linux versus Microsoft Windows. The main restrictive problem of the Windows Bluetooth stack is that it does not support application-level access to SCO data. It is not possible, using the Bluetooth APIs that Microsoft has defined, to send and receive audio data in the method required by HFP.

Is it as good as a commercial hands-free unit?

This depends on a lot of details, including:

It is the goal of HFP for Linux to allow suitable hardware configurations to be of similar quality to commercial hands-free units.