Try this script
;Following script.
_player = _this select 0
_enemy = _this select 1
_bike = _this select 2
#loop
_enemy assignasdriver _bike
?(_enemy distance _player > 50) && !(_enemy in _bike) : [_enemy] ordergetin true
?(_enemy distance _player <= 50) && (_enemy in _bike) && ((speed _bike) > 2) : _bike setVelocity [0,0,0]
?(_enemy distance _player <= 50) && (_enemy in _bike) && ((speed _bike) < 0) : _enemy action ["getout",vehicle _enemy]
~0.1
_enemy domove (getpos _player)
goto "loop"
Save it as 'follow.sqs' and put it in your mission folder. To execute it you'll need to put
[NameOfPlayer,NameOfEnemy,NameOfBike] exec "follow.sqs"
in the 'init' field of your player. It kind of worked for me, but with a few glitches the enemy will move to you, get off when 50 meters away, if you move away he'll remount the bike a little while after, but after that I can't get him to move to you again. He just stays there. If you can figure out how to make him move to you after that, then tell me, I could use the info.