Appending /Library/Frameworks/Python.framework/Versions/3.12/bin to the PATH fixed the problem. I'm surprised the Installation section at xlwings.org doesn't say to do this (sigh).