Through a combination of setting Max FPS to 60 from the default unlimited, using correct body, and moving logic from _input to _physics_process, the timing is as perfect as I can make it and will be updated after the jam.
Until then, press the button a bit passed the flower to trigger. Sorry for any frustration and thanks for playing!