There are examples of using different parsers including two flavors of lxml in pyxb/utils/saxutils.py, but these don't actually build bindings. examples/tmsxtvd can be used to evaluate performance of different parsers. Adding the following to dumpsample.py in that area seems to work, though the performance is not too different from the other methods: the bulk of the time is in processing the content to validate it.
import lxml.sax
import lxml.etree
lsh = pyxb.binding.saxer.PyXBSAXHandler()
lst1 = time.time()
tree = lxml.etree.fromstring(xmld)
lst2 = time.time()
lxml.sax.saxify(tree, lsh)
lst3 = time.time()
lxml_instance = handler.rootObject()
print('LXML-based read %f, parse and bind %f, total %f' % (lst2-lst1, lst3-lst2, lst3-lst1))
print("Equality test on DOM vs LXML: %s" % (dom_instance.equal(lxml_instance),))