I read the code and I made a post about this.
It adds 5% to the city culture. City culture and tile culture are separate. The city square has tile culture, and the city itself has city culture.
It adds tile culture the same way a city culture with 100 culture, but 0 culture per turn adds tile culture.
Example 1: city has 0 culture, adds 0 culture per turn.
You get your inner square. Each tile, including the city square receives 0 culture per turn.
Example 2: city has 500 culture (culture level 4), adds Pi culture per turn. Yes, culture has to be integer values, but this makes it easier to distinguish where the culture is coming from.
Border pops three times, so you have inner square and three more rings. The city square and 8 inner squares (ring 1) receive 20*(4-1)+Pi culture per turn.
The second ring, that is the outer workable tiles, receive 20*(4-2)+Pi culture per turn.
The third ring receives 20*(4-3)+Pi culture per turn.
The third ring receives 20*(4-4)+Pi=Pi culture per turn.
After 10 turns, your inner square, including your city tile, has accumulated (60+Pi)*10=400+10*Pi culture per turn.
So you're spread espionage mission doesn't just have to overwhelm the Pi culture per turn, which accumulated should be the city culture, it has to overwhelm the 40 per turn in the city tile, which is over 10x as much.
This sounds inefficient, but the way spread culture mission works, it's still harder than it looks.
Example 3: City has 2000 culture (culture level 3). You perform your first spread culture mission.
What is the total culture spread? 2000/20=100.
How much tile culture is spread? Well, the added tile culture is calculated the same way as the BTS culture bomb. It will not actually add the culture spread to the tiles directly
First it will divide the added culture into 20 groups. After it adds the culture, it will update the tile culture for one turn.
So turn 1: 100/20=5. The enemy city now has 5 of your culture. You need 10 culture for the first border pop, so exactly 0 culture is added to surrounding tiles, including the city square
Turn 2: 5 x 2=10. The enemy city has 10 culture, so it receives its first "border pop", and is culture level 2, although you will not see it. The inner square receives 20*(1-0)+0 culture per turn. It does not add any of the spread culture culture
The out cross receives 20*(1-1)+0=0 culture. Not that chunk of 5 culture, 0.
Turns 3-19. Exactly the same as 2. Even though the city itself (but not the city square!) is accumulating 95 culture, your outer square gets absolutely no tile culture. The inner square is receiving a constant 20 culture per iteration.
Turn 20: City accumulates 100 culture. It is now culture level 3. Inner square receives 20*(3-1)+0=40 culture. The next ring finally receives 20*(3-2)+0 culture per turn, and the outer square gets absolutely nothing.
Example 4: The creator of the better AI mod creates the new self-aware HAL 9000 AI. After killing the creator, it poses as him and is adopted onto your computer. The HAL 9000 AI knows how to use worldbuilder and edit its own xml files.
It gives its city 100 billion culture.
How much tile culture will you receive?
Well, you will receive 5 billion city culture, divided into 20 chunks.
Iteration 1: Well, the first chunk provides 250 million culture. Unfortunately, culture only goes up to legendary, level 6 culture. So your inner square receives 20*(6-1)+0=100 tile culture, not 250 million culture.
Iterations 2-20: Same thing.
So your spread culture mission has added a nice 250 million city culture, but a completely much less impressive 2000 tile culture.
So if the city is recently settled but outputting low double digit culture, spread culture will work best. But better yet is if your nearby city can pump in culture to the tiles directly.