using a piston stop and a degree wheel will get you dead nuts. do a google search for printable degree wheels - print one out to the diameter of your crank pulley/harmonic dampener (cut out a hole in the middle so you can access the crank pulley bolt to turn the crank w/a socket). if you don't have a piston stop and don't want to buy one for $5 at any auto parts store, make one out of an old plug (pull the ceramic, use a long bolt/nut that will stick into the cylinder) put it in the #1 plug hole & pull the other plugs. turn the crank all the way ccw till #1 hits the stop (gently), then tape the paper degree wheel onto your your pulley so the timing pointer points to 0 degrees on the paper degree wheel. turn the pulley cw till #1 hits the stop in the other direction and mark that spot on the paper degree wheel. TDC is exactly halfway between 0 and the mark you just made. divide the number of degrees on your second mark by 2 and turn the crank till the pointer is there and voila - TDC.
this method is 100% accurate and it doesn't matter what size your degree wheel is. it doesn't matter where the pointer is. it doesn't matter how long the piston stop is. it doesn't matter if your pulley is on upside down. just find the halfway point between the two stops (wherever they land) and you are at TDC.