Tente alterar seu script da seguinte forma:
#!/bin/bash
export DISPLAY=:0
scrot 'screenshot.png' -e 'mv $f /mnt/ftp/screenshots/'
E isso porque o problema ocorre porque o cron usa apenas um conjunto muito restrito de variáveis de ambiente, através do qual DISPLAY
não existe.