I don't believe your problem is the permissions to the device. It appears that their is some kind of built-in security in the mount command to only allow root to run mount (i.e. if(getuid() != 0) puts("mount: Only root can do that)
I don't remember the exact function without looking at the man pages, but you get the point
If that's the case then your only hope is to find some way of disabling that security feature such as running mount as setuid root.