It's hard to say without knowing your example.pdf.
I would simply assume that page 1 does not contain the string [old] in a way that lopdf can see it.
Have you used any of the available API functions to extract the text to see what it is?
Maybe consider first adding some new text instead of replacing somewhere, to see if it correctly adds content and writes the file.
and I believe I am following the docs but I don't know what I am doing wrong.
I am able to extract the text though just fine:
let mut doc = Document::load("Sample.pdf").unwrap();
doc.version = "1.4".to_string();
let text = doc.extract_text(&[1]).unwrap();
println!("{}", text);