It's difficult, but possible. There are certainly no cookbook answers to this.
The basic premise is to first make sure that the directory information trees (DITs) match, which you've probably already figured out.
The next step is to make sure that the OID and OpenLDAP schemas match, which is somewhat less well-understood. OpenLDAP will help you with a lot of this by telling you about object classes, attributes, and syntaxes that it doesn't understand. It tells you this as it tries to load the LDIF from OID. Here's where things get tricky. If you do a straight dump from OID including operational attributes there will be a lot of attributes present in the LDIF that won't translate to and are not needed in OpenLDAP. Some common ones, though, like modifyTimestamp are good to carry over unless you just don't care. In that case you might just do a search of the entire OID db, sans operational attributes, and dump that to a file. Then use it to load the OpenLDAP database with a tool like ldapadd.
Whatever you do, you'll need to understand the object classes, attributes, and syntaxes that *your* data uses (as opposed to what OID uses- its operational attributes). Once you have a grasp of these you'll find it pretty easy to write a perl script to filter the OID LDIF file and make it load perfectly.
Any way you look at it it's an iterative process, but if you buckle down and just do it you'll find there are relatively few differences.
I hope this helps.
Symas - The LDAP Guys