It could be that you simply have not waited long enough. From the docs in reference to the call to dataChanged:
This call notifies the backup manager that there is data ready to be backed up to the cloud. At some point in the future, the backup manager then calls your backup agent's onBackup() method.
The backup is not initiated right away. It is scheduled for a future time. You can initiate a backup right away by using adb on the command line.
See http://developer.android.com/guide/topics/data/backup.html (Testing your backup agent)