I found it! For anyone having similar issues, look in ChunkGenerator.initStructureStarts(), and make sure your BiomeProvider returns true for hasStructure().
I'm writing a 1.14.4 mod that includes its own world type and chunk generator. It's mostly working, but I can't figure out how to generate e.g. villages. The biome I'm using spawns villages when using the default chunk generator, but nothing with mine, and nothing shows up when I /locate either. The vanilla NoiseChunkGenerator has some code dealing with villages in makeBase() which I don't have, but it looks like that just adjusts height variation to fit in villages, so it shouldn't be necessary. I also tried manually telling villages to spawn, but I couldn't figure out the jigsaw system or the village feature - I can get one house spawning, but that's as far as I've gotten on that route. The village feature looks like it only generates villages when a chunk has been flagged as having a village, but I can't find how that's done. Does anyone have any ideas?