I have successfully populated a drop-dowl list based on this article: http://danstechspot.blogspot.com/2010/05/populate-infopath-2010-drop-down-list.html
I am doing this in C# because of the complexity of my queries and the amount of data in our database.
Here is my code:
public void Department_Changed(object sender, XmlEventArgs ...