I think the general opinion/idea is that it's to do with the fact there are so many different Vivillion forms and the game searches for the one that you have, rather than the one in the safari zone. Lots of other people seem to have that problem too :I
Yeah, Vivillon is bugged due to having multiple forms. Since you can't see all of them in one safari, it counts as if you haven't seen it at all.
I agree with Ituralde, I think it is an oversight and the Safari Zone is looking for the meadow pattern (the default one that you can catch in Japan), but most of us are encountering other kinds of Vivillion instead and they're not registering.
Villon has multiple patterns depending on the region it is caught it. Therefore its sprite looks different depending on your MAP location (not in the game but your game's actual region code and location as in country, state, island..yadda yaddda).