iOS voice over does not correctly read out my companies name. For example it reads out \"dog\" instead of \"D.O.G.\" (not my real company name but you get the idea)
I don't think you can provide an alternate bundle name string for VoiceOver. I was however able to find a hack that could work in your specific scenario:
VoiceOver seems to interpret various control characters differently. \u7f
is one of the characters that split the word for VoiceOver and yet do not break display in launchpad. Therefore, defining bundle name as:
CFBundleDisplayName="D\U007fO\U007fG";
in InfoPlist.strings
seems to achieve what you need.
As of iOS 8, you can achieve this by adding the CFBundleSpokenName key to your Info.plist.
https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html#//apple_ref/doc/plist/info/CFBundleSpokenName