This happens because simply implementing the pokemon into the game means that the game doesn't get to process the pokemon. Think of it like a room, the room's the pokedex, and it's guarded by cameras all around, if something teleports into this room, the cameras won't pick it up. So what you have to do if you want it to trigger the pokedex is put it in an egg and hatch it. That way the game goes through the process screen of "PLAYER obtained POKéMON!"