I'm going to spend this weekend looking through the raws, pretending I know Python, at least, I think it's python. Doesn't look like C++, which is the only language I have experience in.
EDIT: Was able to get a crapton of turtles in a warm freshwater swamp...oddly enough, there was a saltwater crocodile on the map. Changed the creature tile tag to 15 instead of 151 after noticing that the raws on the wiki had the creature tile at 15 and my raws were at 151. Going to test in a couple more areas. I do not think that was the problem though.
EDIT2: Good news, was able to get plenty of turtles in a temperate shrubland. Further testing probably needed, but seeing as since the creature tile change from 151 to 15 I have had turtles in 2 out of 2 fortresses, and not having turtles on at least 20 previous forts, I think I might be on to something.
EDIT3: Created a fortress near the ocean to see if I was lucky there too. I was, so I'm starting to think that my guess on the problem might be wrong. I'm going to generate another world and test further. I'm going to be very confused if the lack of fish is due to one tiny syntax error in the raws for turtles.
EDIT4: Created a new world and got some turtles on a mountain map that happened to have a couple pools. Created another map with a stream and was not able to catch any fish in either the pools or the stream. I think it might have something to do with streams/brooks.
EDIT5: Played on the same world as the one where I couldn't find turtles and embarked in an area without a stream/brook. Was able to catch lots of turtles. Also noticed there was an aquifier. Going to see if I can find a map without an aquifier and see if turtles still appear. If they do, it's probably the brooks thing then or maybe some bizarre combination of the two.
EDIT6: Unfortunately, I was unable to recreate the turtles again, be it on a map with an aquifier, without an aquifier, with a river, or with a river and an aquifier. I think I have hit a dead end. Any ideas?