I looked at the odometer issue again, and what you are seeing is actually the intended behaviour. When you added the schedule to the car with an odometer of 38974 km, it decided that the next service should be at 45000 km. Then, when you reported a service at 0 km, you reported that the service that was scheduled at 45000 km actually was performed at 0 km. (Note that when you log a service, you can see which planned service you report being serviced.)
So since the 45000 km service is reported as performed, the plugin moves to the next service, which is 60000 km, hence 60000 - 38974 = 21026.
Events which are "at regular intervals" do not need to be and should not be initialized. The problem should be solved by opening the log and deleting the service reported at 0 km.