Three and O2 have had Voice and Text over WiFi services for quite a while now, but these are not Voice over WiFi. The difference is that Voice over WiFi uses the same base 3GPP standards as Voice over LTE (and therefore the same core systems to handle the traffic) where as the Voice and Text over WiFi that is delivered through bespoke apps use specialised IMS systems to integrate with the core networks.
When it comes to call quality on these Apps (I've used both TuGo and Three in Touch) it's actually pretty good, but of course, depends on who you are calling. If you call a user who is on a low quality 2G cell, then the quality is going to be just as bad as calling from a 2G cell yourself. The same goes for most calls to landlines, as these are still mainly carried over antiquated TDM circuits.
The main problems with these apps, is that they are separate Apps, not native components to the phones. Voice over WiFi is native to the phone and essentially just turns WiFi networks in to another access network for voice calls without having to install an App to do so.