MLPPP is only supported for E1/T1/DS0. So, you can not have a single logical interface with 3xDS3. It will come-up. But, the performance will be greatly reduced, and there could be unforseen issues.
But, they might be able to load-balance. If the client is running BGP with the provider/carrier, they could configure a forwarding-table export policy and then do eBGP multihop or eBGP multihop (peer on loopbacks). Your cilent would need an import policy, setting a higher loc_pref set on the routes learned from the primary OC3. The same thing could be done with static routes, by adjusting the preference.
Unless you have some ancient hardware, the load-balancing is per-flow, and hashed based on header information. Don't be mislead by the command "per-packet". The distribution of outbound traffic will depend on how many/few flows the client has. Of course the clients inbound traffic would be load balanced according to the provider's gear.