I've noticed that I frequently check my peer list and find no i2p peers unless I use -onlynet-native_i2p, but I'd like to also use other peer types.
If you run the patched client in mixed mode, most probably it will use only ip-addresses for outgoing connections. That's why. The bitcoin-client has a pool of known addresses. Selecting of address is a pseudorandom process. At now there are hundreds (at first start) and thousands (after syncing with other clients) known ip-addresses and only several I2P-addresses in the pool. By default only 8 outgoing connections are allowed. So probability of selecting an i2p-address is less than 1%.
If you want to run the program in mixed mode, but want to connect with some i2p-nodes (for tests or other purposes) you have to add an i2p-node manually with "-addnode=" option. Also you may publish your i2p-address or PM me and others can connect to your client. In such case you will see his connections as incoming.
Of course, if your i2p-address changes you should publish the new address again. Obviously, it's inconveniently, so I suggest to use a static i2p-address in this case.
Also if you use the '-tor'/'proxy' options (or appropriate settings in gui) you should use the '-listen' option if you want to accept incoming i2p-connections, because the '-tor'/'proxy' options disable the '-listen' option by default.