Ok so nowhere near as cool as a true custom vibration, and especially not as nice as just having that setting panel for custom vibrations in your app (would be awesome if we could just use that standard panel for vibration settings and let users customize the vibration to their own taste...)
But my solution, use a timer to fire the normal "kSystemSoundID_Vibrate" and play with the interval. Because you can only fire those one at a time, you can make shorter and softer vibrations by decreasing the time between calls. Not very pretty, but it does work...