So, I did what I normally do in situations like this, and tried to simplify the problem. I created an entirely new project, following the guide on the android developer site: http://developer.android.com/guide/topics/media/camera.html#custom-camera
Once I got my new simple application to take a picture, I modified it to call the crop activity, and it worked without an issue.
The biggest different between the example application was that it used a separate CameraPreview class to implement the SurfaceHolder.Callback, where as my application implemented that interface directly in the Activity. I do not know if that was the true issue, but once I changed the code to do that, it seemed to work.
So unless someone can explain it better to me, the fix is to not implement SurfaceHolder.Callback in your activity.