Remember that public knowledge is only knowledge known to NPCs who personally are acquainted with that NPC, so usually you want a NPC everybody knows (that would be Gareth) to be the holder of the information, or to make your own NPC who somehow is acquainted to everybody, they don't even have to be in Silverpine either, just to 'exist' within the world of the game, so you can make it up and give it coordinates that are out of bound or something.
It's mentioned as a tooltip of the public knowledge toggle when you hover on it.
It's made to be logical; if the NPC hasn't even met the NPC 'holding' the knowledge, how would they know about it?
So basically the other NPCs need to be at least acquainted with that NPC to be aware of the information they hold.
It's quite easy to test and verify as well, try speaking to Mirel about Orson or a hunter in the woods, and she won't have the single-est clue about whoever you're talking about; Gareth knowledge of Orson is private, he just knows Orson personally and Orson delivers him meat every Tuesday, and they're aware of eachother, but neither Celandine nor Gareth hold any public knowledge of Orson, so when you mention Orson to Mirel she just goes 'Ors- who?'.



That is of course if Mirel hasn't met Orson directly due to somehow having both of them in a conversation because she lives with you or something, because otherwise their schedule makes it normally impossible (as far as I'm aware) for both of them to be in Gareth's tavern simultaneously.
If you talk about Isolde to Gareth however, (a personal herbalist friend of Rosalyn, that lives off-screen in the capital and is the person she visits every time she goes out of town) because that is public knowledge of Rosalyn and anyone that knows her, he'll immediately understand what you're mentioning.


To sum it up, yes, it is quite organic and elaborate, and you need to keep track of these interactions as well.