Answer 1: the DiscoveredInterfaces table is populated when you run a regular Network Sonar discovery in the website, either interactive or scheduled. The DiscoverInterfacesOnNode verb does not populate this table - it just accumulates the interface info in memory and returns it to you.
Answer 2: There's no configuration option to add properties to this set, but it's a very reasonable feature request. If you want to track this through SolarWinds support, please reference bug #283322.
Answer 3: Not through DiscoverInterfacesOnNode directly. Two ways to deal with this:
1. You could just add all the interfaces (that is, call AddInterfacesOnNode without filtering by status), wait for NPM to populate the adminstatus and operstatus fields in the database, then delete the down ones.
2. You could run your own SNMP Get for ifAdminStatus (220.127.116.11.18.104.22.168.1.7) or ifOperStatus (22.214.171.124.126.96.36.199.1.8) using the ifIndex values returned by DiscoverInterfacesOnNode, then filter using that info.