As you can imagine, scheduling an MLB season is not the easiest task to accomplish. Especially with all the different specifications enacted by the league and the player's union. More or less, there have to be 2,430 games scheduled in a time frame between 178 to 183 days that minimizes travel distance and consecutive playing days (no more than 20 days in a row).
The MLB (and their scheduling contractor) receive a list of requests from teams for all the things they would like for the season. The MLB tries to fit all these in, but again, the schedule isn't the most flexible thing. With that being said, there isn't any known reasoning behind what requests get granted and which ones do not (outside of the Cincinnati Reds always starting the season at home due to the club being the oldest in the league). I would imagine that Orioles just have Opening Day at home at the top of their list, as opposed to other teams that might have other requests they feel are more important.
MLB.com article on scheduling