1- you can't with python. (I'm not even sure you can with c++)
2 - I'm not sure to fully following you. I don't understand the "render preview image" is that a command? In the preferences there is a "Render scene" option. That's maybe the version I'm using. (R24)
To fix the texture path in your material presets, you would need to set the preview with a file save on your harddrive. But this is not possible with Python.
About the initialisation, if you just move the point that should work but i would recommend to init again SplineLengthData.
if you add a point, you need to initialize the SplineLengthData again.
I actually found the solution while posting the question but wanted to still post it in order to help others who might have the same problem. (If this is against community guidelines I apologise)
The solution is to use the CKey.SetGeData() method. Done!