Hm. When I call `geany` from shell (either from a new one or using `geany &` repeatedly) it spawns a new instance every time.
When I call `geany <filename>` it opens the file in the first instance that was opened. (Thinking of which, that also isn't too good - I'd expect it to appear in the last one).